zoukankan      html  css  js  c++  java
  • android GridView设置边框教程!!

    有图有真相!下面推荐内容排版就是使用的GridView,看到边框了没??呵呵,接着上核心代码!


    test.xml 布局文件,这个布局为GridView的每个项的布局。

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"    
        >
        <LinearLayout 
            android:id="@+id/recommend_item_content_linear"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:gravity="center_vertical"
            android:paddingTop="6dp"
            android:paddingBottom="5dp"
            >
            <ImageView
                android:id="@+id/recommend_item_icon"
    	        android:layout_width="50dp"
    	        android:layout_height="50dp"
    	        android:layout_marginLeft="2dp"
    	        android:src="@drawable/icon"
    	        android:contentDescription="@null"
    	        />
            <LinearLayout 
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:gravity="center_vertical"
                android:layout_marginLeft="3dp"
                >
                <TextView
                    android:id="@+id/recommend_item_appname"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textColor="@color/black"
                    android:textSize="@dimen/text_size"
                    android:text="测试文字"
                    />
                <LinearLayout 
    		        android:layout_width="wrap_content"
    		        android:layout_height="wrap_content"
    		        android:orientation="horizontal"
    		        >
    		        <TextView
    		            android:id="@+id/recommend_item_intro"
    	                android:layout_width="wrap_content"
    	                android:layout_height="wrap_content"
    	                android:textColor="@color/dimgray"
    	                android:textSize="@dimen/small_small_text_size"
    	                android:text="体验"
    	                />
    		        <TextView
    		            android:id="@+id/recommend_item_money"
    	                android:layout_width="wrap_content"
    	                android:layout_height="wrap_content"
    	                android:layout_marginLeft="2dp"
    	                android:textColor="@color/yellow_red"
    	                android:textSize="@dimen/little_title_size"
    	                android:text="+4万5"
    	                />
    		    </LinearLayout>
            </LinearLayout> 
        </LinearLayout>
        <View
            android:id="@+id/recommend_item_bottomline"
            android:layout_width="fill_parent"
            android:layout_height="1px"
            android:layout_below="@+id/recommend_item_content_linear"
            android:background="@drawable/custom_tab_indicator_divider"
            android:contentDescription="@null"
            />
         <View
            android:id="@+id/recommend_item_rightline"
            android:layout_width="1px"
            android:layout_height="fill_parent"
            android:layout_alignParentRight="true"  
            android:layout_alignBottom="@+id/recommend_item_bottomline"     
            android:background="@drawable/custom_tab_indicator_divider"
            android:contentDescription="@null"
            />
    </RelativeLayout>
    

    GridView adapter (适配器)核心代码

    @Override
    	public View getView(int position, View convertView, ViewGroup parent) {
    		ViewHolder holder = null;
    		View row=convertView;
    		
    		if(convertView == null) {
    			row=inflater.inflate(R.layout.recommend_item_layout, null);
    			holder = new ViewHolder();			
    			holder.iconImageView=(ImageView)row.findViewById(R.id.recommend_item_icon);
    			holder.appNameTextView=(TextView)row.findViewById(R.id.recommend_item_appname);
    			holder.introTextView=(TextView)row.findViewById(R.id.recommend_item_intro);
    			holder.totalMoneyTextView=(TextView)row.findViewById(R.id.recommend_item_money);
    			holder.rightLineView=(View)row.findViewById(R.id.recommend_item_rightline);
    			
    			row.setTag(holder);
    		} else {
    			holder=(ViewHolder)row.getTag();
    		}
    		String iconUrl=arrayList.get(position).getIconUrl();
    		String appName=arrayList.get(position).getAppName();
    		String intro=arrayList.get(position).getIntro();
    		String totalMoney=arrayList.get(position).getTotalMoney();
    		
    		imageLoader.displayImage(iconUrl, holder.iconImageView);
    		holder.appNameTextView.setText(appName);
    		holder.introTextView.setText(intro);
    		if(totalMoney!=null)
    			holder.totalMoneyTextView.setText(totalMoney);
    		else
    			holder.totalMoneyTextView.setText("");
    		
    		//单数就隐藏右边线,索引从0开始(双数开始)
    		if(position%2!=0) {
    			holder.rightLineView.setVisibility(View.GONE);
    		}
    		
    		return row;
    	}
    
    	class ViewHolder {
    		ImageView iconImageView;
    		TextView appNameTextView;
    		TextView introTextView;
    		TextView totalMoneyTextView;	
    		View rightLineView;
    	}


    我这里的边框线为纯色的,你可以使用渐变色实现更加绚丽的效果,诸如此类:


    好帖,大家要顶啊!

  • 相关阅读:
    像草一样,朝海生长
    那一次,我们属于彼此
    discuz !NT 3.5 论坛整合 .net 网站用户登录,退出
    oracel 10g 网络服务管理: 主机登录
    断章
    屏蔽浏览器左下角的js错误提示
    IE下载的文件自动加上中括号的Bug解决方案
    oracle下重置用户的所有序列
    循环追加表空间的数据文件的存储过程
    查询所有连接到ORACLE服务器的客户端IP地址的方法
  • 原文地址:https://www.cnblogs.com/xieyuan/p/3787315.html
Copyright © 2011-2022 走看看