HorizontalScrollView实现 横向显示view

本文介绍了如何在Android项目中使用HorizontalScrollView实现横向显示视图,通过布局文件和代码示例详细阐述了实现过程,并提供了Demo下载链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前一段时间,做了项目,要求横向显示。使用listview搞了半天都是垂直显示,并在一个layout里面。

 

 

 

请教了别人,感谢大白:(他的博客)http://blog.youkuaiyun.com/baiyuliang2013/article/details/46879939,总是热心帮助!谢谢!

好了,开始主体吧:

一、activity_scrollview.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="match_parent"
    android:orientation="vertical" >
    
    <LinearLayout 
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content" 
	    android:layout_marginLeft="15dp"
	    android:layout_marginTop="10dp"
	    android:orientation="vertical"
       	android:layout_gravity="center|left">  
	  	<TextView  
	  	    style="@style/illegallyQuery_detalis_txt_style"
	       	android:id="@+id/txt_recorder"/>
    </LinearLayout>
	    
    <HorizontalScrollView  
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content" 
	    android:layout_gravity="center"
        android:scrollbars="none"
	    android:id="@+id/list_ScrollView">
	   <LinearLayout 
	       android:layout_width="wrap_content"
	       android:layout_height="wrap_content"
	       android:orientation="horizontal"
		   android:layout_marginBottom="5dp" 
		   android:background="@android:color/darker_gray"
	       android:id="@+id/list_layout">  
	        
       </LinearLayout>
   </HorizontalScrollView>

</LinearLayout>


二、activity_main.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="match_parent"
		android:gravity="center"
    	android:orientation="vertical">
   	<LinearLayout 
		android:layout_width="200dp"
		android:layout_height="200dp"
		android:layout_gravity="center"
		android:gravity="center"
    	android:orientation="vertical"
    	android:layout_marginLeft="10dp"
    	android:id="@+id/layout"
		android:background="@android:color/darker_gray"> 
       <LinearLayout 
	        style="@style/illegallyQuery_layout4_style" 
	        android:id="@+id/infor_layout">
      		<TextView  
	            style="@style/illegallyQuery_txt_style"
	            android:text="姓名:"
	            android:id="@+id/txt_name" />
         	<TextView  
	             style="@style/illegallyQuery_list_txt_style"  
	             android:text="张三"
	             android:id="@+id/txt_nameShow" />  
       </LinearLayout>
       <LinearLayout 
	        style="@style/illegallyQuery_layout4_style"
	        android:id="@+id/money_layout">
      		<TextView  
	            style="@style/illegallyQuery_txt_style"
	            android:text="年龄:"
	            android:id="@+id/txt_age"/> 
         	<TextView  
	             style="@style/illegallyQuery_list_txt_style"  
	             android:text="24"
	             android:id="@+id/txt_ageShow"/>  
       </LinearLayout>
       <LinearLayout 
	        style="@style/illegallyQuery_layout4_style"
	        android:id="@+id/point_layout">
	      	<TextView  
	            style="@style/illegallyQuery_txt_style"
	            android:text="属相:"
	            android:id="@+id/txt_sign"/>
         	<TextView  
	             style="@style/illegallyQuery_list_txt_style"  
	             android:text="八戒"
	             android:id="@+id/txt_signShow"/>  
     </LinearLayout>
     
     </LinearLayout>
</LinearLayout>


三、mainActivity

 

public class DemoFragment extends Fragment {
	
	TextView txt_recorder;
	HorizontalScrollView list_ScrollView;
	LinearLayout list_layout;
	private List<Bean> mList;
	 
	private Context mContext;
	public DemoFragment(Context context){
		mContext = context;
	}
	
	@Override
	public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
		View mLayoutView = inflater.inflate(R.layout.activity_scrollview, container,false);
		
		txt_recorder = (TextView)mLayoutView.findViewById(R.id.txt_recorder);
		list_ScrollView = (HorizontalScrollView)mLayoutView.findViewById(R.id.list_ScrollView);
		list_layout = (LinearLayout)mLayoutView.findViewById(R.id.list_layout); 
		
		getQueryInfo(); 
		
		return mLayoutView;
	}
 
	public void getQueryInfo(){
		mList = new ArrayList<Bean>();
		mList.add(new Bean("张三","24","猴子"));
		mList.add(new Bean("张妞","24","八戒"));
		mList.add(new Bean("叶子","24","山羊"));
		mList.add(new Bean("楚风","24","白虎"));
		for(int i = 0; i < mList.size(); i++){
			list_layout.addView(getView(mList.get(i))); 
		}
	 }
 
	public View getView(Bean mBean) {
		View mView = View.inflate(mContext,R.layout.activity_main,null); 

		TextView txt_name =(TextView)mView.findViewById(R.id.txt_name); 
		TextView txt_sign =(TextView)mView.findViewById(R.id.txt_sign);
		TextView txt_age =(TextView)mView.findViewById(R.id.txt_age);
		TextView txt_nameShow =(TextView)mView.findViewById(R.id.txt_nameShow); 
		TextView txt_ageShow =(TextView)mView.findViewById(R.id.txt_ageShow);
		TextView txt_signShow =(TextView)mView.findViewById(R.id.txt_signShow);
		txt_nameShow.setText(mBean.getNameShow()); 
		txt_ageShow.setText(mBean.getAgeShow()); 
		txt_signShow.setText(mBean.getSignShow()); 
		
		return mView;
	} 
	 
	class Bean {
		
		private String nameShow;
		private String ageShow;
		private String signShow;
		 
		public Bean(
					String nameShow,
					String ageShow,
					String signShow) {
			this.nameShow = nameShow;
			this.ageShow = ageShow;
			this.signShow = signShow;
		}

		public String getNameShow() {
			return nameShow;
		}
		public void setNameShow(String nameShow) {
			this.nameShow = nameShow;
		}
		public String getAgeShow() {
			return ageShow;
		}
		public void setAgeShow(String ageShow) {
			this.ageShow = ageShow;
		}
		public String getSignShow() {
			return signShow;
		}
		public void setSignShow(String signShow) {
			this.signShow = signShow;
		}
	 } 
}

四、运行效果


 

Demo下载网址,免费:http://download.youkuaiyun.com/my/uploads

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值