TextViewの色を動的に変更する方法を知りたいと思います。そこにはいくつかのものがありますが、今私が探しているものはかなりあるようです。私がここでやっているのは配列を繰り返しているのですが、その "+" ct.setTextColor(.....)でnullポインターエラーが発生している問題は、誰もが何らかの理由があるのですか?ここTextViewの色を動的に変更できますか?
はXMLです:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"
android:src="@drawable/icon" />
<LinearLayout
android:orientation="vertical"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/tt"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:id="@+id/bt"
android:singleLine="true"
android:ellipsize="marquee"
/>
</LinearLayout>
<TextView
android:id="@+id/pm"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="right"
android:text="-"
android:textSize="30sp"
android:textStyle="bold"
/>
</LinearLayout>
とコードsnippit
int c = count;
ind = (count);
j=0;
TextView ct = (TextView)findViewById(R.id.pm);
funkAdapter = (new ArrayAdapter<String>(this, R.layout.rowneg, R.id.pm));
String[] tmpAry= new String[count];
for (int i = 0; i < ind; i = i+2){
tmpAry[j] = dataAryArray[i];
if (tmpAry[j].equals("-")){
funkAdapter.add(tmpAry[j]);
ct.setTextColor(Color.RED);
}else{
funkAdapter.add(tmpAry[j]);
ct.setTextColor(Color.GREEN);
}
j++;
}
setListAdapter(funkAdapter);
これはばかげて見えるかもしれませんが、あなたの例外PLZ、 – Houcine
のスタックトレースを追加..しかし、私はどのように行いますこれを得る? logcat? – tricknology
Android SDKを入手したツールフォルダ内のDDMSを使用してスタックトレースを取得できます。電話が接続された状態でDDMSを起動し、赤色(E)記号をクリックしてエラーを表示します。 – Brian