小编Xeb*_*one的帖子

Android Volley如何暂时处理网络连接丢失?

如果Android Volley发布请求因网络丢失而失败,Android Volley会在网络连接自动恢复后重试帖子吗?它会触发所有请求尝试,等待连接重新建立还是只是触发错误并停止?

如果在重新建立连接后Android Volley没有重试,似乎我将不得不创建逻辑,以便在连接丢失时我有一个额外的队列,并且每当连接状态改变时它将重试.

networking post android request android-volley

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

Android ViewPropertyAnimator不会同时缩放

每次按下按钮时,我都会尝试使用ViewPropertyAnimator缩放视图(不确定的ProgressBar).

loadingCircle.animate().scaleY(1.5f).scaleX(1.5f).setDuration(100f);
Run Code Online (Sandbox Code Playgroud)

我有一个animatorListener可以在onAnimationEnd上缩放回正常:

loadingCircle.animate().scaleY(1.0f).scaleX(1.0f).setDuration(100f);
Run Code Online (Sandbox Code Playgroud)

没有什么太复杂的.但是,它似乎并不总是同时缩放x和y.

通常它第一次就是正确的,有时是第二次.如果它不起作用,它只会动画链中的最后一个操作.如果它是scaleX,它只会缩放X.如果我交换它,它只会缩放Y.

scaleX和scaleY的文档说:

已经在酒店运行的动画将被取消

但是,我认为ViewPropertyAnimator能够被链接,并且此注释仅适用于新动画(在不同的代码行上).我做错了什么,或者我发现了一个错误?

我在GalaxyS4上运行Android 4.2.2.股票ROM,但根深蒂固.如果这有所作为.

animation android view scale

8
推荐指数
1
解决办法
4180
查看次数

Volley图像位图为空

在我的应用程序中,我使用的是volley imageLoader,但有一个问题我无法理解.当我只调用response.getBitmap并将其设置为背景imageview时,它很好,但是当我添加一些代码,例如System.out.println(response.getBitmap)时,它会崩溃.换句话说,如果我只调用respone.getBitmap一次就可以了,但是当两次或更多时它会崩溃.这里有什么问题?

public class NewsAdapter extends BaseAdapter {
    private ArrayList<News> mNewsList;
    private DefaultActivity mActivity;
    private ImageLoader imageLoader;
    private RequestQueue mRequestQueue;

    public NewsAdapter(DefaultActivity pActivity, ArrayList<News> newsList){
        mActivity = pActivity;
        mNewsList = newsList;
        mRequestQueue = Volley.newRequestQueue(mActivity);
        imageLoader = new ImageLoader(mRequestQueue, new BitmapLruCache(
                BitmapLruCache.getDefaultLruCacheSize()));

    }

    private class ViewHolder {
        public ImageView networkImageView;
        public TextView title;
        public TextView description;
    }

    @Override
    public int getCount() {
        return mNewsList.size();
    }

    @Override
    public News getItem(int i) {
        return mNewsList.get(i);
    }

    @Override
    public long getItemId(int i) {
        return …
Run Code Online (Sandbox Code Playgroud)

android android-volley

5
推荐指数
2
解决办法
3887
查看次数

Java:尝试执行所有行,还是跳转到catch?

我想知道java try-catch语句的执行路径,但无法找到有关以下情况的详细信息.

如果我有一个如下声明:

try {

  // Make a call that will throw an exception
  thisWillFail();

  // Other calls below:
  willThisExecute();

} catch (Exception exception) {
  // Catch the exception
}
Run Code Online (Sandbox Code Playgroud)

在移动到catch之前,thisWillFail()下面的行是否会执行,或者一旦抛出异常,try语句的执行是否会跳转到catch?

换句话说,假设调用'a'不会在try语句中抛出异常,是否可以安全地假设调用'a'后调用'b'将会执行?

谢谢

java try-catch order-of-execution

4
推荐指数
1
解决办法
3406
查看次数

Android:LinearLayout中的clipToPadding与子ListView被忽略?

我有一个相当奇怪的问题,我希望有人能说清楚.我不确定它是否是Android错误.

我在片段中显示以下布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:clipToPadding="false"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:background="@color/grey"
    android:orientation="vertical"
    tools:context="com.testapp.test.TestFragment"
    >

    <ListView
        android:id="@+id/data_listView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    </ListView>

    <TextView
        android:id="@+id/section_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

即使我将clipToPadding设置为false,我的ListView仍然剪切到我的LinearLayout的填充!

一个解决办法是从LinearLayout中卸下顶部和底部填充,并将其添加到与clipToPadding设置为false上的ListView ListView的,但我宁愿没有这样做,作为一个特殊的情况,我可能要隐藏ListView例如,在保持填充的同时显示它下面的TextView(和屏幕外),并且希望避免在布局中增加额外的复杂性.

更新: 通过一些测试,我发现了一些有趣的东西.在父LinearLayout上设置clipToPadding没有任何效果,因为ListView本身不会在父LinearLayout内滚动,而是ListView中的子项在ListView中滚动!在使用调试工具进行一些调查之后,这似乎很明显.子节点仅限于ListView本身内部的空间,并且因为ListView设置在LinearLayout的填充内,并且不移动,所以子节点在该空间内滚动.

这是我绘制的ASCII图:

--------- <LinearLayout>
|       | 
|       | [ Padding ]
|       | 
| ----- | <ListView>
| | c | |
| | o | |
| | n | | Content scrolls
| | t | | within ListView
| | e | | ListView …
Run Code Online (Sandbox Code Playgroud)

android listview fragment android-layout android-linearlayout

0
推荐指数
1
解决办法
7606
查看次数