Android ApiDemos示例解析(154):Views->Layouts->ScrollView->2. Long

本例使用ScrollView顯示一個長列表,其定義的scroll_view_2.xml

[html] 
<ScrollView xmlns:android=”http://schemas.android.com/apk/res/android” 
android:layout_width=”match_parent” 
android:layout_height=”wrap_content” 
android:scrollbars=”none”> 
 
<LinearLayout 
android:id=”@+id/layout” 
android:orientation=”vertical” 
android:layout_width=”match_parent” 
android:layout_height=”wrap_content”> 
 
<TextView 
android:layout_width=”match_parent” 
android:layout_height=”wrap_content” 
android:text=”@string/scroll_view_2_text_1″/> 
 
<Button 
android:layout_width=”match_parent” 
android:layout_height=”wrap_content” 
android:text=”@string/scroll_view_2_button_1″/> 
 
</LinearLayout> 
</ScrollView> 

<ScrollView xmlns:android=”http://schemas.android.com/apk/res/android”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:scrollbars=”none”>

<LinearLayout
android:id=”@+id/layout”
android:orientation=”vertical”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”>

<TextView
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:text=”@string/scroll_view_2_text_1″/>

<Button
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:text=”@string/scroll_view_2_button_1″/>

</LinearLayout>
</ScrollView>
ScrollView 隻定義瞭一個TextView 和 Button在LinearLayout中,而在ScrollView2.java 使用代碼為LinearLayout 動態添加瞭63個TextView 和Button:

[java] 
LinearLayout layout 
 = (LinearLayout) findViewById(R.id.layout); 
for (int i = 2; i < 64; i++) { 
 TextView textView = new TextView(this); 
 textView.setText("Text View " + i); 
 LinearLayout.LayoutParams p 
 = new LinearLayout.LayoutParams( 
 LinearLayout.LayoutParams.MATCH_PARENT, 
 LinearLayout.LayoutParams.WRAP_CONTENT 
 ); 
 layout.addView(textView, p); 
 
 Button buttonView = new Button(this); 
 buttonView.setText("Button " + i); 
 layout.addView(buttonView, p); 

LinearLayout layout
 = (LinearLayout) findViewById(R.id.layout);
for (int i = 2; i < 64; i++) {
 TextView textView = new TextView(this);
 textView.setText("Text View " + i);
 LinearLayout.LayoutParams p
 = new LinearLayout.LayoutParams(
 LinearLayout.LayoutParams.MATCH_PARENT,
 LinearLayout.LayoutParams.WRAP_CONTENT
 );
 layout.addView(textView, p);

 Button buttonView = new Button(this);
 buttonView.setText("Button " + i);
 layout.addView(buttonView, p);
}

 

從而構成一個長列表,一屏肯定顯示不下,此時就可以滾動屏幕來顯示:

 

 

發佈留言