Android 以编程方式访问rowlistview

Android 以编程方式访问rowlistview,android,Android,我试图以编程方式更改ListView中文本的对齐方式,而不是更改xml文件 这是我的row\u listview.xml <?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/textViewRowList" android:layout_height="?andro

我试图以编程方式更改
ListView
中文本的对齐方式,而不是更改xml文件

这是我的
row\u listview.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/textViewRowList" 
    android:layout_height="?android:attr/listPreferredItemHeight"
    android:layout_width="fill_parent"
    android:textSize="20sp"
    android:paddingLeft="6dip"
    android:paddingRight="6dip" 
    android:gravity="left" 
    android:textColor="#330033"
    android:textStyle="bold"/>
因此,在我的
mainactivity.java中,当用户单击我的活动上的按钮时,我试图在运行时更改listview中文本的对齐方式

private ListView lv;
private TextView tvRowListView;
lv.setAdapter(new ArrayAdapter<String>(this,R.layout.row_listview, sampleStringArray));
tvRowListView = (TextView) findViewById(R.id.textViewRowList);
tvRowListView.setGravity(Gravity.CENTER);
私有ListView lv;
私有文本视图tvRowListView;
lv.setAdapter(新的ArrayAdapter(this,R.layout.row_listview,sampleStringArray));
tvRowListView=(TextView)findViewById(R.id.textViewRowList);
tvRowListView.setGravity(重力.中心);

然而,上面的最后一行抛出了nullpointerexception。我不知道为什么。有人可以在这里提出一些想法/解决方案。

您的textViewRowList针对该列表中的每个项目都存在,如果您想更改它的属性,您需要在
getView
中的
适配器中进行更改,这意味着您需要制作一个自定义适配器谢谢。我可以在论坛上得到更多关于客户适配器的问题。我想我现在知道解决问题的方法了。
private ListView lv;
private TextView tvRowListView;
lv.setAdapter(new ArrayAdapter<String>(this,R.layout.row_listview, sampleStringArray));
tvRowListView = (TextView) findViewById(R.id.textViewRowList);
tvRowListView.setGravity(Gravity.CENTER);