`
zdphpn
  • 浏览: 11443 次
  • 性别: Icon_minigender_1
  • 来自: 邯郸市
社区版块
存档分类
最新评论
阅读更多
        当然想要ListView显示自定义的布局,显示文字、图片,如下:

布局什么的都不是很难的,多试试就好。其实是不想多说关于布局什么的。修改item_list.xml如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 	xmlns:android="http://schemas.android.com/apk/res/android"
    	android:layout_width="match_parent"
    	android:layout_height="wrap_content"
   	android:paddingLeft="@dimen/padding_s"
    	android:paddingRight="@dimen/padding_s"
    	android:paddingTop="0dp"
    	android:paddingBottom="@dimen/padding_s"
    	android:orientation="vertical" >
    	<RelativeLayout
	    	android:layout_width="match_parent"
	    	android:layout_height="wrap_content"
	    	android:paddingLeft="@dimen/padding_n"
	    	android:paddingRight="@dimen/padding_n"
	    	android:paddingTop="@dimen/padding_ll"
	    	android:paddingBottom="@dimen/padding_s"
	    	android:background="@color/white_dark" >
        	<ImageView
            	android:id="@+id/iv_icon"
            	android:layout_width="@dimen/header_h_2"
	    		android:layout_height="@dimen/header_h_2"
	    		android:layout_alignParentLeft="true"
	    		android:layout_alignParentTop="true"
	    		android:src="@drawable/ic_launcher" />
        	<TextView
            	android:id="@+id/tv_name"
            	android:layout_width="wrap_content"
	    		android:layout_height="@dimen/header_h_2"
	    		android:layout_alignParentTop="true"
	    		android:layout_toRightOf="@+id/iv_icon"
	    		android:layout_marginLeft="@dimen/margin_ss"
	    		android:gravity="center_vertical"
	    		android:textSize="@dimen/text_level2"
	    		android:textColor="@color/text_level2"
	    		android:text="用户名例子"
	    		android:singleLine="true"/>
        	<TextView
            	android:id="@+id/tv_time"
            	android:layout_width="wrap_content"
	    		android:layout_height="@dimen/header_h_2"
	    		android:layout_alignParentTop="true"
	    		android:layout_alignParentRight="true"
	    		android:gravity="center_vertical"
	    		android:textSize="@dimen/text_level3"
	    		android:textColor="@color/text_level3"
	    		android:text="2016-11-12"
	    		android:singleLine="true" />
        	<ImageView
            	android:id="@+id/iv_time"
            	android:layout_width="@dimen/header_h_2"
	    		android:layout_height="@dimen/header_h_2"
	    		android:paddingLeft="@dimen/padding_ss"
	    		android:paddingRight="@dimen/padding_ss"
	    		android:layout_marginRight="0dp"
	    		android:layout_toLeftOf="@+id/tv_time"
	    		android:layout_alignParentTop="true"
	    		android:src="@drawable/time"
	    		android:tint="@color/text_level3" /> 
        	<TextView
            	android:id="@+id/tv_title"
            	android:layout_width="match_parent"
	    		android:layout_height="wrap_content"
	    		android:layout_below="@+id/iv_icon"
	    		android:layout_marginTop="@dimen/margin_ll"
	    		android:layout_marginBottom="@dimen/margin_n"
	    		android:textSize="@dimen/text_level1"
	    		android:textColor="@color/text_level1"
	    		android:text="标题例子,大小如何" /> 
        	<TextView
            	android:id="@+id/tv_data"
            	android:layout_width="match_parent"
	    		android:layout_height="wrap_content"
	    		android:layout_below="@+id/tv_title"
	    		android:layout_marginBottom="@dimen/margin_s"
	    		android:lineSpacingMultiplier="1.14"
	    		android:textSize="@dimen/text_level2"
	    		android:textColor="@color/text_level2"
	    		android:text="内容例子,大小如何。内容例子,大小如何。内容例子,大小如何。内容例子,大小如何。内容例子,大小如何。内容例子,大小如何"
	    		android:visibility="visible" />
	</RelativeLayout>
	<RelativeLayout 
        	android:id="@+id/rl_data"
        	android:layout_width="match_parent"
        	android:layout_height="100dp"
        	android:visibility="visible"
        	android:background="@color/white_dark"> 
    	</RelativeLayout>
	<LinearLayout 
        	android:layout_width="match_parent"
        	android:layout_height="wrap_content"
        	android:padding="@dimen/padding_n"
        	android:background="@color/white_dark">
		<View
	        	android:layout_width="match_parent"
	        	android:layout_height="1dp"
	        	android:background="@color/gray_light"/>
    	</LinearLayout>
    	<TextView
        	android:id="@+id/tv_read"
        	android:layout_width="match_parent"
    		android:layout_height="wrap_content"
    		android:paddingTop="@dimen/padding_s"
    		android:paddingLeft="@dimen/padding_n"
    		android:paddingRight="@dimen/padding_n"
    		android:paddingBottom="@dimen/padding_ll"
    		android:textSize="@dimen/text_level2"
    		android:textColor="@color/text_level3"
    		android:text="2K阅读 • 54回复 • 原创"
    		android:singleLine="true"
    		android:background="@color/white_dark" />
</LinearLayout>

        最上左侧用户头像、用户名,下方标题,下方文本内容,再下方一个布局用于代码动态添加一些图片什么的,再下方是一个浏览统计。
        修改ListAdapter

@Override
public View getView(final int position, View convertView, ViewGroup parent) {
	// TODO Auto-generated method stub
	final Holder holder;
	
	if(convertView==null){
		convertView=activity.getLayoutInflater().inflate(
R.layout.item_list, parent, false);
	
		holder=new Holder();
		convertView.setTag(holder);
	}
	else{
		holder=(Holder)convertView.getTag();
	}
	holder.iv_icon=(ImageView)convertView.findViewById(R.id.iv_icon);
	holder.tv_name=(TextView)convertView.findViewById(R.id.tv_name);
			holder.tv_time=(TextView)convertView.findViewById(R.id.tv_time);
	holder.tv_title=(TextView)convertView.findViewById(R.id.tv_title);
	holder.tv_data=(TextView)convertView.findViewById(R.id.tv_data);
	holder.rl_data=(RelativeLayout)convertView.findViewById(R.id.rl_data);
	holder.tv_read=(TextView)convertView.findViewById(R.id.tv_read);
	
	return convertView;
}

private class Holder{
		
	ImageView iv_icon;
	TextView tv_name;
	TextView tv_time;
	TextView tv_title;
	TextView tv_data;
		
	RelativeLayout rl_data;
	TextView tv_lmgctrl;//先不管他
	TextView tv_gifctrl;//和她
	GifImageView giv_data;//和他
	ProgressBar pb_load;//还有它
		
	TextView tv_read;
}

        运行效果就不贴了,和上图类似,图片是代码动态加上的而已,之后会说。

一往无前——2017/05/19


  • 大小: 89.5 KB
分享到:
评论

相关推荐

    给Listview的Item设置动画效果

    本篇文章将深入探讨如何为ListView的Item设置动画效果,以及相关的技术实现。 首先,我们要了解ListView的工作原理。ListView通过Adapter来加载数据,并使用ViewHolder模式提高滚动性能。当我们需要对每个Item添加...

    android listview item 拖动排序

    这通常涉及到在item的根布局上设置`TouchListener`,并在`onTouchEvent()`中调用`listView.startDrag()`。 通过以上步骤,你就可以在Android应用中实现一个功能完备的可拖动排序的ListView了。`DragSortListView`库...

    listview中改变item背景颜色

    因此,改变Item背景颜色通常有两种方法:一种是在Adapter中自定义视图,另一种是通过设置ListView的ItemDecoration。 1. 自定义Adapter中的View: 在自定义Adapter时,我们可以在`getView()`方法中动态设置每个...

    ListView动态添加、移除item

    本篇主要探讨如何动态地添加和移除ListView中的item,以实现一个流畅的用户体验。 一、ListView的基本使用 1. XML布局:在布局文件中创建ListView,并为其指定id,例如`android:id="@+id/list_view"`。 2. 数据源:...

    ListView选中item颜色改变

    "ListView选中item颜色改变"是常见的需求,它涉及到ListView的交互设计,使得用户可以通过视觉反馈感知到所选中的条目。本篇文章将深入探讨如何实现这个功能。 首先,我们需要了解ListView的基本工作原理。ListView...

    android listview item背景色点击效果实例

    在Android中,ListView的每个项(item)都是一个View或ViewGroup,通常我们通过自定义布局文件来设计每个item的显示样式。为了实现点击效果,我们可以使用两种主要方法: 1. **自定义Adapter**: 在自定义的...

    listview item选中删除,全选,取消

    "listview item选中删除,全选,取消"这个主题涉及到ListView中的多选操作、删除功能以及全选和取消全选的实现。接下来,我们将深入探讨这些知识点。 1. 多选模式(Multiple Choice Mode): 在ListView中,为了...

    android ListView Item展开效果

    然而,仅使用基本的ListView有时无法满足复杂的交互需求,例如,我们可能需要在ListView的每一项(Item)上实现点击后展开子项的效果。这就涉及到了“android ListView Item展开效果”的实现。 ListView的Item展开...

    Android Listview Item上下拖动位置

    Android Listview Item上下拖动位置

    ListView Item排序

    `ListView Item排序`是Android UI设计中一个常见的需求,特别是在数据管理类的应用中。这个功能允许用户通过长按并拖动来改变列表中项目的顺序,为用户提供了一种直观、易用的交互方式。在本篇文章中,我们将深入...

    LISTVIEW的item效果

    7. **分隔线(Divider)**:可以设置ListView的divider属性来添加item之间的分隔线,或者自定义divider高度和颜色。 8. **下拉刷新和上拉加载**:为ListView添加SwipeRefreshLayout可实现下拉刷新功能,而使用诸如...

    ListView Item内部操作

    在开发过程中,我们经常需要对ListView中的每一项(Item)进行各种操作,如点击事件、长按事件、自定义视图等。本教程将详细介绍如何实现ListView的Item内部操作,并重点讲解BaseAdapter的使用。 首先,我们需要...

    Android ViewPager实现画廊效果ListView Item添加动画集合

    要实现这样的效果,你需要创建一个自定义的`ListView`Adapter,比如继承自`BaseAdapter`,并在`getView()`方法中为每个Item添加`ViewPager`并设置对应的图片数据。 动画部分是提升用户体验的关键。在Android中,...

    listview item 选择问题

    同时,ListView提供了`setItemChecked()`方法来设置item的选中状态,以及`getCheckedItemPositions()`来获取所有选中item的位置。 4. **自定义Adapter** - 当需要更复杂的item布局或交互时,需要自定义Adapter。...

    ListView默认Item选中状态

    ListView的默认行为是不设置任何项为选中状态,但有时我们希望在应用启动时,第一个Item能自动呈现出选中效果,以引导用户或者突出初始焦点。本教程将深入讲解如何实现ListView的第一个Item的默认选中状态。 首先,...

    listview item点赞和收藏

    ListView的每个可见项称为一个Item,Item上通常会包含多种交互控件,如按钮、图片等。在本例中,我们关注的是ListView Item中的“点赞”和“收藏”功能。这两个功能在许多社交应用或者内容分享平台中十分常见,它们...

    android的ListView点击item使item展开的做法

    在实际应用中,我们经常需要实现点击ListView的某一项(item)时,该item能够展开显示更多的内容,例如子列表或者详细信息。这个功能可以通过自定义ListView的Adapter和设置监听器来实现。下面将详细解释如何实现这...

    Android 为ListView每个Item上面的按钮添加事件

    总之,为ListView的每个Item的按钮添加事件并获取TextView文本,关键在于适当地设置OnClickListener,并在点击事件中正确地定位和获取对应的TextView。记得在Adapter的getView()方法中进行这些操作,确保每个Item的...

    关于listview item重用导致图片重复加载 图片重新请求

    然而,在实现ListView时,由于其内部机制,可能会出现一个问题,即ListView中的item(列表项)重用导致图片重复加载,这不仅会消耗不必要的网络资源,还可能影响用户体验。本文将深入探讨这个问题,并提供解决方案。...

    仿微信的ListView item可左右滑动效果

    在许多应用中,我们经常看到类似微信的滑动效果,用户可以左右滑动ListView的每一项(item)来触发不同的操作,如删除、标记等。这个效果的实现主要涉及到自定义适配器(Adapter)和滑动监听器(SwipeListener)的...

Global site tag (gtag.js) - Google Analytics