当前位置: 代码迷 >> Android >> Android中的根本控件(8)
  详细解决方案

Android中的根本控件(8)

热度:89   发布时间:2016-04-28 01:38:03.0
Android中的基本控件(8)
  • 安卓中的基本控件:滚动视图ScrollView,

    ????????????????????

???????????首先我们了解一下什么是滚动视图

qq:???

?右边的滚动条就是利用这个原理做的,接下来我们自己来做一个简单的视图,首先定义xml文件

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/ScrollView1"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >    <LinearLayout        android:id="@+id/mylinear"        android:layout_width="match_parent"        android:layout_height="match_parent"        android:orientation="vertical" >    </LinearLayout></ScrollView>

?

.java文件定义:

public class MainActivity extends Activity {	private String  data[]={"湖南大学","张穗穗","岳麓山下","爱晚亭","自卑亭的小卖部","www.ee.com","咨询邮箱","综合楼","中南大学","小TJ","天马公寓"};	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		LinearLayout layout=(LinearLayout)super.findViewById(R.id.mylinear);		LinearLayout.LayoutParams param=new LinearLayout.LayoutParams(				ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT);//定义布局参数		for(int i=0;i<this.data.length;i++){			Button bt=new Button(this);			bt.setText(this.data[i]);			layout.addView(bt,param);					}					}	@Override	public boolean onCreateOptionsMenu(Menu menu) {		// Inflate the menu; this adds items to the action bar if it is present.		getMenuInflater().inflate(R.menu.main, menu);		return true;	}}

?

  • 另一种? ListView

这回我们全部用代码布局,也就是说xml里不动手脚,这里要用到this.listview.setAdapter神秘适配器。源代码是:

public class MainActivity extends Activity {	private String  data[]={"湖南大学","张穗穗","岳麓山下","爱晚亭","自卑亭的小卖部","www.ee.com","咨询邮箱","综合楼","中南大学","小TJ","天马公寓"};    private ListView listview;	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		this.listview=new ListView(this);		this.listview.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1,this.data));		//定义适配器,每行显示一条数据,并设置组件内容		super.setContentView(listview);			}	@Override	public boolean onCreateOptionsMenu(Menu menu) {		// Inflate the menu; this adds items to the action bar if it is present.		getMenuInflater().inflate(R.menu.main, menu);		return true;	}}

?显示效果非常好,以前我们定义分割线要自己定义view,而这个主动定义了分割线。



?
?

?
?

  相关解决方案