最近我改变了一点我的应用程序,由于一个原因,我不明白“settextcolor”方法似乎不再工作。
在我的xml中,我有一个listview,并且我以编程方式在这个listview中添加textview。
XML格式:

   <LinearLayout
        android:id="@+id/activity_game_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="left|top"
        android:orientation="vertical"
        android:padding="7dp" >
    </LinearLayout>

爪哇语:
textView = new TextView(getContext());
    textView.setText("some text");
    textView.setTextSize(20f);
    textView.setGravity(Gravity.CENTER);
    textView.setTextColor(Color.BLACK);
    textView.setTextAppearance(getContext(), android.R.style.TextAppearance_Medium);
    addView(textView);

但不管我做什么,这条短信都是白色的。
为什么?

最佳答案

我试过你的代码,我想麻烦的因素是setTextAppearance。事实上,在这个调用之后调用setTextColor()修复了这个问题。下面的代码对我非常有用:

        TextView textView = new TextView(this);
        textView.setText("some text");
        textView.setTextSize(20f);
        textView.setGravity(Gravity.CENTER);
        // textView.setTextColor(Color.RED);
        textView.setTextAppearance(this, android.R.style.TextAppearance_Medium);
        textView.setTextColor(Color.RED);
        // setContentView(textView);

我不知道这个问题的真正原因。

10-07 20:55