zoukankan      html  css  js  c++  java
  • GridView 事件_ZZ

    这是目前(20151118)的理解,以后是否会有更改,再说......

    1、

    假设 GridView 的item的布局文件为item.xml :

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <LinearLayout 
     3     xmlns:android="http://schemas.android.com/apk/res/android"
     4     android:background="#0000FF"
     5     android:layout_width="fill_parent"
     6     android:layout_height="wrap_content">
     7     <TextView 
     8         android:id="@+id/ItemText" android:bufferType="normal"
     9         android:singleLine="true" android:background="#FF0000"
    10         android:layout_width="fill_parent" android:gravity="center"
    11         android:layout_margin="1dip" android:layout_gravity="center"
    12         android:layout_height="wrap_content" >
    13     </TextView>
    14 </LinearLayout>

    2、

    GridView 设置背景色:

    GridView gv = (GridView)findViewById(R.id.gridView1);
    gv.setBackgroundColor(0x0);

    3、

    事件 -- 点击 各个 item 的事件:

     1         gv.setOnItemClickListener(new OnItemClickListener()
     2         {
     3             @Override
     4             public void onItemClick(AdapterView<?> _parent, View _view, int _position, long _id)
     5             {
     6                 // ZC: _parent : 本GridView对应的Adapter
     7                 // _view : 是当前item的view,通过它可以获得该项中的各个组件。 
     8                 // _position : 是当前的item在listView中的相对位置!
     9                 // _id : 是当前item的ID。这个id根据你在适配器中的写法可以自己定义。 
    10                 TextView tv = (TextView)_view.findViewById(R.id.ItemText);
    11                 //HashMap tv = (HashMap)_parent.getItemAtPosition(_position);
    12                 tv.setBackgroundColor(0xFFC0C0C0);
    13 
    14                 // http://blog.csdn.net/chinaguangzhou000000/article/details/6697184
    15                 Log.i("ZZZ", "ItemClick(1) : "+Integer.toString(_parent.getCount()));
    16             }
    17         });

    4、

    事件 -- GridView滚动条滚动 的事件:

     1         gv.setOnScrollListener(new OnScrollListener()
     2         {
     3 
     4             @Override
     5             public void onScrollStateChanged(AbsListView view, int scrollState)
     6             {
     7                 //正在滚动时回调,回调2-3次,手指没抛则回调2次。scrollState = 2的这次不回调      
     8                 //回调顺序如下      
     9                 //第1次:scrollState = SCROLL_STATE_TOUCH_SCROLL(1) 正在滚动      
    10                 //第2次:scrollState = SCROLL_STATE_FLING(2) 手指做了抛的动作(手指离开屏幕前,用力滑了一下)      
    11                 //第3次:scrollState = SCROLL_STATE_IDLE(0) 停止滚动                
    12                 //当屏幕停止滚动时为0;当屏幕滚动且用户使用的触碰或手指还在屏幕上时为1;    
    13                 //由于用户的操作,屏幕产生惯性滑动时为2    
    14                  
    15                 //当滚到最后一行且停止滚动时,执行加载      
    16                 //if (isLastRow && scrollState == AbsListView.OnScrollListener.SCROLL_STATE_IDLE) {      
    17                 //    //加载元素      
    18                 //    ......  
    19             }
    20 
    21             @Override
    22             public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount)
    23             {
    24                 Log.i("ZZZ", Integer.toString(firstVisibleItem)+" , "+Integer.toString(visibleItemCount)+" , "+Integer.toString(totalItemCount));
    25                 
    26                 //滚动时一直回调,直到停止滚动时才停止回调。单击时回调一次。      
    27                 //firstVisibleItem:当前能看见的第一个列表项ID(从0开始)      
    28                 //visibleItemCount:当前能看见的列表项个数(小半个也算)      
    29                 //totalItemCount:列表项共数      
    30                  
    31                 //判断是否滚到最后一行      
    32                 //if (firstVisibleItem + visibleItemCount == totalItemCount && totalItemCount > 0) {      
    33                 //    isLastRow = true;  
    34             }
    35         });

    参考网页:

    1、
    android中gridView中点击 item为选中状态 - 无线.无极线 - 博客频道 - CSDN.NET.html
    http://blog.csdn.net/chinaguangzhou000000/article/details/6697184
    
    2、
    使用OnScrollListener回调处理自动加载更多 - fancychendong的专栏 - 博客频道 - CSDN.NET.html
    http://blog.csdn.net/fancylovejava/article/details/39369753
    
    3、
    android Gridview 点击某个item 改变item的背景 - H_hong的日志 - 网易博客.html
    http://blog.163.com/zhuowh2006@126/blog/static/101823724201314103631112/

    网页内容保存于:百度云 codeskill33 --> "全部文件 > 来自__网页 > Android_Eclipse > GridView事件" --> GridView事件__20151118_0838.rar

    X

  • 相关阅读:
    robotframework中文日志显示乱码
    flask学习
    RF元素定位的例子
    rf增加产品的例子
    Django如何重设Admin密码
    c++ ,类型转换
    new,delete和malloc,free以及allocator<T>
    疑问记录本
    c 字符串常用函数
    递归和栈溢出。
  • 原文地址:https://www.cnblogs.com/codeskilla/p/4973427.html
Copyright © 2011-2022 走看看