各位大哥,小弟最近遇到一个问题,在做android一个页面的时候,我这样设计的
pubic class EventView extends LinearLayout{
       public LinearLayout totalAreaLayout = null;
       public ScrollView  fatherScrollView = null;
       public EventView(Context context) {
super(context);
initial(context);
}
        initial(Context context) {            totalAreaLayout = new LinearLayout(context);
            totalAreaLayout.setGravity(Gravity.VERTICAL);
            TextView titleTip = new TextView(context);
            titleTip.setText("here is the information:");
            totalAreaLayout.addView(titleTip );             fatherScrollView = new ScrollView(context);
            fatherScrollView.addView(addContentLinearLayout (context));
            totalAreaLayout.addView(fatherScrollView);
            addView(totalAreaLayout);
        }
        LinearLayout addContentLinearLayout  (Context context){
           
            LinearLayout sonLinearLayout = new LinearLayout(context);
            
            //some views
           
           return sonLinearLayout ;
      
        }
}
现在我遇到的问题就是,由于里linearLayout里面加载的数据是从网络上动态获取的。所以不能一次加载完,所以我想做到,当ScrollView 的ScrollBar滑动到最底端的时候,获取此时的时间,然后请求数据,move掉当前的数据,加载现在请求的数据。
所以想问问各位大哥,我的ScrollView 布局只是我这个外围的linearLayout布局的一个部分。我应该获取什么事件。并且该怎么样做比较好呢?会不会受到外层布局的影响呢?
分不到,谢谢
万分感谢!
谢谢

解决方案 »

  1.   

    加载新数据前先用这个删除旧数据
    ScrollView.removeAllViews
      

  2.   

    谢谢,但是我想知道,我怎样获取加载数据,因为在初始化的时候,我会加载一个满屏的数据,然后可以滑动scrollbar,到最底部,这时候,我需要重新加载数据。这样,我应该获取一个事件,然后去处理这个事件,加载数据。不知到这是一个什么事件呢?
      

  3.   

    在做ListView加载数据时如果数据量大的话会造成加载时间过长而卡屏,所以为了解决这个问题,查看了SDK,在OnScrollListener中有两个方法 只要重写这两个方法就可以实现滚动加载,例如:public void onScroll(AbsListView v, int firstVisibleItem,
       int visibleItemCount, int totalItemCount) {
      lastItem = firstVisibleItem + visibleItemCount - 1;
      if (adapter.count == lastItem) {
       adapter.count += 10;
       adapter.notifyDataSetChanged();
      } } public void onScrollStateChanged(AbsListView view, int scrollState) {
      // TODO Auto-generated method stub  Log.i("onScrollStateChanged", "onScrollStateChanged");
     }来自
    http://blog.csdn.net/evy_gyw/archive/2011/01/05/6118196.aspx
      

  4.   

    谢谢,dream19861009我用的是ScrollView,因为我的有许多数据需要分类,然后把每一类数据放在一个ListView里面,在listview之前再加一个提示。最后把这些listview和提示放在一个LinearLayout里面。把这个LinearLayout放在ScrollView里面。这样我加载的数据比如说是超过了一个屏幕,就可以局部滚动。所以我现在想问各位的是,我有没有办法获取ScrollView的事件去动态加载数据。
      

  5.   

    不要把listview放在scrollview里,会有问题的!
      

  6.   

    这个问题我已经解决了,现在就剩下动态的加载数据了。当ScrollView的scrollbar 滑动到底部时,我需要remove当前的content,然后重新请求数据,加载数据。这个让我很纠结。谢谢
      

  7.   


    这个事件有可能被listview截获了,调用listview.setOnScrollListener(),重载OnScrollListener类的onScrollStateChanged()方法来处理