Android中的基本控件(8)

  • 安卓中的基本控件:滚动视图ScrollView,
    Android中的基本控件(8)
                        

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

qq:   
Android中的基本控件(8)
 右边的滚动条就是利用这个原理做的,接下来我们自己来做一个简单的视图,首先定义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;
	}

}

 
Android中的基本控件(8)
Android中的基本控件(8)

  • 另一种  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,而这个主动定义了分割线。


Android中的基本控件(8)
 
 
Android中的基本控件(8)
 
 

相关推荐