私はAndroidが初めてです。クリック可能なテキストを含むアプリケーションを作成しています。クリック可能なすべてのテキストは配列に存在し、次に関連付けられListView
て RelativeLayout 内に表示されます。
そのコードは -
this.setListAdapter(new ArrayAdapter<String>(this, R.layout.main, R.id.label, contact_name));
ListView lv = getListView();
main は相対レイアウト、label はレイアウト内のテキスト ボックス ID、contact_name はクリック可能なテキストの配列です。これはすべて正常に機能しています。
最後に、配列が非常に大きい場合、線形レイアウトはスクロール可能になります。
ここで、このリストが占める領域を画面全体の高さの 80% または 90% に制限し、下部に新しいページ/ビューを開くボタン用のスペースを確保したいと考えています。相対レイアウト内にボタンを含めると、リスト内のすべての項目にボタンが追加されます。相対的なレイアウトの高さを変更すると、リスト内の各アイテムの高さが変わります。これは、配列内の各アイテムが相対レイアウト全体に関連付けられており、相対レイアウトの配列がすべてのアイテムを表示するために来ると結論付けています。ここで、相対レイアウト リストを画面の上部から 80% に制限して、下部にボタンを配置するにはどうすればよいですか。
現在の XML ファイルは次のようになります。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/btn"
android:layout_alignParentBottom="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="Next"
/>
<ScrollView
android:id="@+id/scroll"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/btn">
<TextView
android:id="@+id/label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dip"
android:textSize="16sp"
android:textStyle="bold" >
</TextView>
</ScrollView>
</RelativeLayout>
コードの終わり
出力は、実際のコンテンツが非表示になっている [次へ] ボタンの配列です。
これは私のJavaコードです
// Make the contact number parameter accessible to member functions of List View
final String[] f_contact_number = contact_number;
// Binding Array to ListAdapter
this.setListAdapter(new ArrayAdapter<String>(this, R.layout.main, R.id.label, contact_name));
ListView lv = getListView();
// listening to single list item on click
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse(f_contact_number[position]));
startActivity(intent);
}
});
Contact_number と contact_names は、contact_name をクリックすると番号を呼び出す 2 つの文字列配列です。
Thanks