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

  • 相关阅读:
    SD卡测试
    测试人员可能会遇到的问题
    HDU 1024 Max Sum Plus Plus
    HDU 1176 免费馅饼
    HDU 1257 最少拦截系统
    HDU 1087 Super Jumping! Jumping! Jumping!
    poj 1328 Radar Installation
    poj 1753 Flip Game
    HDU 1003 Max Sum
    HDU 5592 ZYB's Premutation(BestCoder Round #65 C)
  • 原文地址:https://www.cnblogs.com/codeskilla/p/4973427.html
Copyright © 2011-2022 走看看