2012-01-19 50 views
6

我已经实现了我的应用程序上的ListView应用我已经使用getListView()method.I已经写的代码如下:如何在ListView android应用程序的中心设置文本?

String[] conversionsadd = getResources().getStringArray(R.array.conversions); 
    setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,conversionsadd)); 
    getListView().setTextFilterEnabled(true); 
    getListView().setBackgroundResource(R.drawable.listback2); 

当我写在onCreate方法上面的代码,我可以能够显示列表与一些文本。 从上面的代码我想显示在列表中的文本,并显示文本的颜色。

+0

只需使用'android:layoutGravity =“center”'到你的列表视图。但是,在这里你使用的是Android默认的listview。尝试使用自己的listview而不是'android.R.layout.simple_list_item_1' – Praveenkumar

回答

23

您使用内置的布局是

android.R.layout.simple_list_item_1 

此布局无法更改。但是,您可以提供自己的行布局。

你行应该是这样的:

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/text1" 
    android:layout_height="?android:attr/listPreferredItemHeight" 
    android:layout_width="fill_parent" 
    android:textSize="20sp" 
    android:paddingLeft="6dip" 
    android:paddingRight="6dip" 
    android:gravity="center" /> 

记住,ID应该是唯一的android:id="@android:id/text1"

,现在你可以把这个给你的ArrayAdapter的构造函数:

ArrayAdapter<String>(this,R.layout.my_custom_layout,conversionsadd); 
+0

工作出色,只有一件事我发现在Android Studio中,'Design'不会显示这些更改 - 但是当您使用它们时可以看到模拟器。 – 2016-10-15 00:43:40

1

,你应该给的ArrayAdaptergetView功能或R.layout.simple_list_item_1 XML的代码,这通常是在ListView项的样式设置

4

我因此未尝试,但我认为,重写getView适配器方法,并执行以下操作:

String[] conversionsadd = getResources().getStringArray(R.array.conversions); 
    setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,conversionsadd) 
{ 
    public View getView(AdapterView adapterView, View convertView, int position, long id) 
    { 

     View view=super.getView(adapterView, convertView, position, id); 
     TextView txt=view.findViewById(android.R.id.textView1); 
     txt.setGravity(Gravity.CENTER); 

     return view; 
    } 
}); 
    getListView().setTextFilterEnabled(true); 
    getListView().setBackgroundResource(R.drawable.listback2); 
相关问题