ListView要素のフォントサイズを変更するにはどうすればよいですか? main.xmlファイルで、Android:textSize(pt、px、sp、dp)のいくつかの異なる値を試しましたが、何も変更されていないようです。
Main.xmlで現在使用しているものは次のとおりです。
<ListView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@Android:id/list"
Android:textColor="#ffffff"
Android:background="#000080"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:clickable="true"
Android:dividerHeight="1px"
Android:layout_marginTop="5px"
Android:textSize="8px"/>
これが私のJavaです。
package com.SorenWinslow.TriumphHistory;
import Android.app.ListActivity;
import Android.os.Bundle;
import Android.widget.ArrayAdapter;
public class TriumphHistory extends ListActivity {
String[] HistoryList;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ArrayAdapter<String> adapter;
HistoryList = getResources().getStringArray(R.array.history);
adapter = new ArrayAdapter<String> (this,Android.R.layout.simple_list_item_1,HistoryList);
setListAdapter(adapter);
}
}
2つの方法:
simple_list_item_1.xml
_をAndroidソースからコピーして変更し、_Android.R.layout.simple_list_item_1
_の代わりに使用します。BaseAdapter
を使用し、getView(..)
呼び出しでフォントサイズを変更します。後者をお勧めします。
レイアウトに入り、mylist.xmlという名前の新しいxmlファイルを作成します
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@Android:id/text1"
Android:paddingTop="2dip"
Android:paddingBottom="3dip"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content" />
今コードで
adapter = new ArrayAdapter<String> (this,Android.R.layout.simple_list_item_1,HistoryList);
に変更する
adapter = new ArrayAdapter<String> (this,R.layout.mylist,HistoryList);
List_item.xmlという名前の別のファイルを作成してください
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:padding="6dp"
Android:textSize="21sp">
リスト行にあるテキスト用に別のxmlファイルを作成します。
textView:DにAndroid:layout_height = "?android:attr/listPreferredItemHeight"を追加するだけです(線形レイアウトではなく相対レイアウトで配置します)
そして、setContentView(R.layout.listview)に以前のListView xmlを使用します
およびArrayAdapterコードの他のxmlファイル
ArrayAdapter adapter = new ArrayAdapter(this、R.layout.yoursecondLayoutforthelistswithText、R.id.titles、HistoryList)
r.id.titlesはTextViewのIDです