相关疑难解决方法(0)

返回ListView时保持/保存/恢复滚动位置

我有一个很长ListView的用户可以在返回上一个屏幕之前滚动.当用户ListView再次打开它时,我希望列表滚动到之前的相同点.关于如何实现这一点的任何想法?

android scroll scroll-position android-listview

388
推荐指数
8
解决办法
20万
查看次数

调用notifyDataSetChanged后,在ListView中保留位置

我正在使用OnScrollListener在用户滚动到底部时动态地将项添加到ListView.在我将数据添加到适配器并调用notifyDataSetChanged后,ListView返回到顶部.理想情况下,我想保留ListView中的位置.关于我应该怎么做的任何想法?

android listview

42
推荐指数
2
解决办法
3万
查看次数

notifyDataSetChanged()使列表刷新并滚动回到顶部

我正在尝试实现无限滚动列表视图,但是当我调用notifyDataSetChanged()整个列表刷新时,滚动位置将返回到顶部.

这是正常行为吗?如何才能简单地添加添加的项目而不刷新并保持滚动位置?

java android android-listview

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

如何在更新时保持listview的滚动位置

我已经阅读了很多例子,但如果我希望在ListView更新之后保持我的滚动位置JSON,那么我可以不使用AsyncTask实例吗?

我的清单的代码是

 String wrd;
    //ArrayList<HashMap<String,String>> mylist;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Intent i2=getIntent();
         wrd=i2.getStringExtra("entrd");
        Log.v("keyis",wrd);



        final Handler handler = new Handler();
        Runnable runable = new Runnable() {

            @Override
            public void run() {

                //call the function
                LoadData();
                //also call the same runnable
                handler.postDelayed(this, 40000);
            }
        };
        handler.postDelayed(runable, 10);

    }public void LoadData(){


         JSONObject j2=JSONfunctions.getJSONfromURL("/webservice_search.php?keyword="+wrd+"&format=json");
         ArrayList<HashMap<String,String>> mylist = new  ArrayList<HashMap<String,String>>();

         try{JSONArray jray=j2.getJSONArray("listings");
            for(int i=0;i<jray.length();i++){
                Log.v("state","json data being read");
                JSONObject …
Run Code Online (Sandbox Code Playgroud)

android json listview scroll autoscroll

22
推荐指数
4
解决办法
3万
查看次数

如何在Android中保存和恢复ListView位置

我有tabView,在每个标签中显示列表.当我在一个选项卡中滚动时,切换到另一个选项卡并返回到上一个选项卡,位置返回到顶部而不是显示上一个滚动位置.我该如何实现这一目标?需要知道如何使用onSaveInstanceState和onRestoreInstanceState来保存位置并使用保存的位置来显示上一个滚动位置.

提前致谢.


谢谢大家的回复.我尝试了所有的解决方案,但遇到了其他问题.基本上我面临的问题如下.

当我启动我的应用程序时,我有一个listview作为我的第一个活动.当我单击列表项时,它会启动包含3个选项卡的选项卡活动.所有3个选项卡都使用名为ListActivity的相同活动.但是3个标签包含不同的数据.我的问题是当我在选项卡之间切换时如何保留列表的位置.通过提供上述解决方案,当我在一个选项卡中更改位置时,它也会影响其余选项卡.例如,如果我在第一个选项卡中的位置6,则此位置将设置为第二个和第三个选项卡,以及我对所有3个选项卡使用相同的ListActivity.我不被允许分享代码.所以必须这么长时间输入问题.创建的选项卡数量也是动态的.它可能是3或4或5.但是所有选项卡都使用1个ListActivity.

任何人都可以给我一个如何实现这一目标的例子.1.单个ListActivity在多个选项卡中使用.2.在影响其他选项卡后,将光标位置保留在选项卡中.

您的解决方案表示赞赏.提前致谢.

android listview tabview

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

Android ListView y位置

似乎ListView没有以与ScrollView相同的方式公开其y位置.换句话说:我需要记住ListView滚动到的确切位置,并在我返回活动时设置它.

只是为了澄清:我不需要选择的项目......这很简单.我需要恢复ListView上精确的像素y位置.

谢谢!

android listview state position

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