小编Nav*_*ake的帖子

有没有办法在AnimatedVectorDrawables中监听动画结束

我创建了AnimatedVectorDrawable,它运行得很好,现在我正在寻找一种方法来更改动画或在视图完成后隐藏视图.我希望有一个听众,但它看起来不像.有人可以帮忙吗?

编辑

所以我找到了一种解决方法,但不是一种非常优雅的方式.我做的是创建一个线程并轮询动画是否正在运行.

new Runnable() {
    public void run() {
        while(mLoop) {
            if(mAnimatedVectorDrawable.isRunning()) {
                Thread.sleep(mPollingInterval);
            } else {
                mLoop = false;
                // TODO what ever
            }
        }
    }
};
Run Code Online (Sandbox Code Playgroud)

如果有人找到更好的解决方案,请分享.

animation android listener android-vectordrawable

19
推荐指数
2
解决办法
5243
查看次数

InDither在Android N中弃用

正如标题所暗示的那样,inDither字段BitmapFactory.Options现已弃用.Android doc说"这个字段在API级别24中已被弃用.从N开始,这将被忽略." 有谁知道为什么它已被弃用,还有替代品吗?

android bitmap

14
推荐指数
1
解决办法
566
查看次数

Android HTTPUrlConnection响应返回垃圾

这是我输入流标题的代码

mResponseCode = connection.getResponseCode();

mError = mResponseCode != 200 && mResponseCode != 201 && mResponseCode != 202;

if (mError) {
    inputStream = connection.getErrorStream();
} else {
    inputStream = connection.getInputStream();
}
inputStreamReader = new InputStreamReader(inputStream);
bufferedReader = new BufferedReader(inputStreamReader);

String inputLine;
final StringBuilder builder = new StringBuilder();

while ((inputLine = bufferedReader.readLine()) != null)
    builder.append(inputLine);

resultStr = builder.toString();
Run Code Online (Sandbox Code Playgroud)

但字符串返回垃圾值,如" }"

响应头包含Content-Type: application/json; charset=UTF-8所以我尝试添加

inputStreamReader = new InputStreamReader(inputStream, Charset.forName("UTF-8"));
Run Code Online (Sandbox Code Playgroud)

但没有帮助.

它完全适用于邮递员所以我知道这项服务并没有出错.

有人能提供一些帮助吗?

java android httpurlconnection

11
推荐指数
1
解决办法
556
查看次数

在ActivityInstrumentationTestCase2中运行espresso

我已经写了一些测试用例但是当我尝试在其中加入浓缩咖啡时,它会显示出来 java.lang.IllegalStateException: No instrumentation registered! Must run under a registering instrumentation.

我知道我应该迁移到junit 4,但我真的不想改变所有的测试.

这是测试类:

public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> {

    private Activity activity;

    public MainActivityTest() {
        super(MainActivity.class);
    }

    @Before
    protected void setUp() throws Exception {
        super.setUp();
        injectInstrumentation(InstrumentationRegistry.getInstrumentation());
        activity = getActivity();
    }

    @Test
    public void testEmptyField() {
        onView(withId(R.id.editText)).perform(typeText(""));

        onView(withId(R.id.buttonVerify)).perform(click());

        onView(withText("Please input text")).check(matches(isDisplayed()));
    }

}
Run Code Online (Sandbox Code Playgroud)

以下是我包含的依赖项:

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(':UniversalImageLoader')
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:support-v4:23.1.1'
    androidTestCompile 'com.android.support.test:runner:0.4'
    androidTestCompile 'com.android.support.test:rules:0.4'
    androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'
}
Run Code Online (Sandbox Code Playgroud)

android android-espresso

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