小编lui*_*fzs的帖子

我什么时候可以先测量视图?

所以我在尝试设置视图的背景可绘制时有点混乱.该代码依赖于知道视线的高度,所以我不能把它onCreate()onResume(),因为getHeight()返回0 onResume()似乎是最接近我可以得到虽然.我应该在哪里放置如下所示的代码,以便在显示给用户时背景发生变化?

    TextView tv = (TextView)findViewById(R.id.image_test);
    LayerDrawable ld = (LayerDrawable)tv.getBackground();
    int height = tv.getHeight(); //when to call this so as not to get 0?
    int topInset = height / 2;
    ld.setLayerInset(1, 0, topInset, 0, 0);
    tv.setBackgroundDrawable(ld);
Run Code Online (Sandbox Code Playgroud)

height layout android android-lifecycle

59
推荐指数
3
解决办法
5万
查看次数

Shell脚本:声明空数组的正确方法

我试图在Shell脚本中声明一个空数组,但我遇到了错误.

#!/bin/bash

list=$@

newlist=()

for l in $list; do

        newlist+=($l)

done

echo "new"
echo $newlist
Run Code Online (Sandbox Code Playgroud)

当我执行它时,我得到了 test.sh: 5: test.sh: Syntax error: "(" unexpected

arrays bash shell

27
推荐指数
3
解决办法
6万
查看次数

Firebase邀请说已发送邀请但尚未收到

我试图通过Firebase邀请发送邀请.从联系人中选择一封电子邮件时,Firebase表示已发送邀请,但从未收到该电子邮件.

在控制台上,SHA1认证是可配置的.

返回的错误代码始终为RESULT_OK,并且从AppInviteInvitation.getInvitationIds返回的邀请数正确无误.

SDK在gradle上使用最新版本10.0.1进行更新,如文档中所述.

创建邀请的代码是:

Intent intent = new AppInviteInvitation.IntentBuilder(title)
                .setMessage(msg)
                .setCallToActionText(callToActionText)
                .setOtherPlatformsTargetApplication(AppInviteInvitation.IntentBuilder.PlatformMode.PROJECT_PLATFORM_IOS, IOS_CLIENT_ID)
                .build();
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

android firebase firebase-invites

27
推荐指数
1
解决办法
1043
查看次数

在Android中的方向更改时,视图布局不会刷新

我希望我的VIEW布局可以根据方向变化进行调整.

我的清单设置为:android:configChanges="keyboardHidden|orientation"在活动上.

我有res/layout-land,res/layout-port.

我有onConfigurationChanged我的Activity(它被称为轮换).

在我,Activity我有一个ViewFlipper内部,我有LinearLayouts.

当我启动Activityin port或land模式时,View的布局是正确的(根据我的res/layout-????文件).

但是当我已经进入Activity并且我旋转手机时,我的视图布局不会改变.旋转屏幕,并且onCreate不会调用活动,因为它应该onConfigurationChanged被调用Activity,但是屏幕总是重新绘制,并且LinearLayoutActivity启动时加载了屏幕.

我有一种感觉,我错过了一些东西onConfigurationChanged,但不知道是什么.我想我需要ViewFlipperLinearLayout内部或内部调用一些函数.我应该打电话给哪些功能?

ViewFlipper flipper;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    flipper = new ViewFlipper(getApplicationContext());
    setContentView(flipper);
    initLayout();
}

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    setContentView(flipper);
}

void initLayout() {
    MyView myview = createMyView(0);
    flipper.addView(myview, 0); …
Run Code Online (Sandbox Code Playgroud)

android view rotation orientation onconfigurationchanged

9
推荐指数
1
解决办法
1万
查看次数

Checkstyle LineLength 配置不起作用

在尝试添加maven-checkstyle-plugin到我的 Java 项目时,我遇到了一些奇怪的问题。checkstyle 版本是 3.1.0,它使用 checkstyle 版本 8.19。下面是checkstyle.xml项目正在使用的:

<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
          "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
          "https://checkstyle.org/dtds/configuration_1_3.dtd">
<module name="TreeWalker">
    <module name="LineLength">
        <property name="max" value="120"/>
    </module>
</module>
Run Code Online (Sandbox Code Playgroud)

和我在 pom.xml 上的配置

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <version>3.1.0</version>
    <configuration>
        <configLocation>checkstyle.xml</configLocation>
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

现在,当我运行时mvn checkstyle:check会显示以下消息:

[错误] 无法在项目 myproject 上执行目标 org.apache.maven.plugins:maven-checkstyle-plugin:3.1.0:check (default-cli):在 checkstyle 配置期间失败:在 Checker 中不允许 LineLength 作为孩子 - > [帮助1]

如果我更新 checkstyle 使其看起来像这样

<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
          "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
          "https://checkstyle.org/dtds/configuration_1_3.dtd">
<module name="LineLength">
        <property name="max" value="120"/>
</module> …
Run Code Online (Sandbox Code Playgroud)

java checkstyle maven maven-checkstyle-plugin

4
推荐指数
2
解决办法
4678
查看次数

Android:EditText 上的软键盘 Backspace 不起作用

发生的情况是这样的:活动 A 和 B 有一个EditText并且它们都有IME_SEARCH。只能通过 SAMSUNG 平板电脑上的软键盘进行输入。在 Activity AI 上可以毫无问题地使用EditText。问题是,在 Activity BI 上,在我点击“空格”后或每当我使用建议中的单词时,无法使用退格键删除文本。它的表现就像那里不再有文字了。如果我输入新字符,我可以将它们删除到空格。

要点:

  1. EditTexts包含相同的视图层次结构
  2. 配置处理的代码IME_SEARCH(通过setOnEditorActionListener)是相同的
  3. 两者TextWatcher也相同
  4. 在清单中,这两个活动都配置为
    android:configChanges="keyboardHidden|keyboard|orientation"
    android:windowSoftInputMode="stateAlwaysHidden|adjustUnspecified"
    
    Run Code Online (Sandbox Code Playgroud)

beforeTextChanged我在两者的方法上设置了断点TextWatcher。我插入了一个“空格”并按了“退格键”。在活动 A上Edittext,该方法被触发,但在活动 B 上,该方法没有被触发。我看不出发生这种情况的原因,因为两者的属性Edittext配置相同。我也尝试删除该IME选项,但行为保持不变。

有谁知道会发生什么?

编辑1:

searchTxt.addTextChangedListener(new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {

            }

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {

            }

            @Override
            public void …
Run Code Online (Sandbox Code Playgroud)

android soft-keyboard android-edittext

2
推荐指数
1
解决办法
4185
查看次数

scipy.interpolate.interp1d“种类”不起作用

我正在尝试 interpolate.interp1d 但它有一些奇怪的行为。这是脚本:

x = np.linspace(0, 10, 10)  
y = np.cos(-x**2/9.0)
f = interp1d(x, y, kind='cubic')

plt.figure(figsize=(10,7))
plt.plot(x, y, 'o', x, f(x), '--')
plt.legend(['data', 'interp'], loc='best')
plt.show()
plt.pause(2**31-1)
Run Code Online (Sandbox Code Playgroud)

但我得到的结果就像我传递了 kind='线性'。事实上,无论参数“kind”如何,结果都是一样的。我错过了什么吗? 在此输入图像描述

python interpolation scipy python-3.x

2
推荐指数
1
解决办法
1757
查看次数