动态更改TextView android

时间:2014-04-10 19:54:11

标签: android textview

有没有办法动态更改TextView。 我有SharedPreferences,它可以在" GameScreen"中使用。但我也希望向用户显示分数 在" First Scree"(不是游戏屏幕)。 问题是它只有在我关闭打开的应用程序时才会改变

mGameSettings = getSharedPreferences(GAME_PREFERENCES, Context.MODE_PRIVATE);
        TextView goldmenu = (TextView) findViewById(R.id.goldmenu);
        goldmenu.setTextColor(getResources().getColor(R.color.gold_color));
        int curScore = mGameSettings.getInt(GAME_PREFERENCES_SCORE, 0);
        String mmGold = String.valueOf(curScore);  
        goldmenu.setText(mmGold);

(编辑)的

1 个答案:

答案 0 :(得分:0)

是的,您需要做的就是找到给定资源ID的视图。资源ID通过id标记在xml中设置,例如

<TextView
     android:id="@+id/text_id"
     ....
     .... />

在您的活动中,您可以通过它的资源

访问布局中的TextView
TextView text = (TextView) findViewById(R.id."text_id"); 

然后按

设置文字
text.setText("text string");

您还可以更改视图和布局参数

text.setBackgroundColor(Color.RED);
text.setTextSize(12);
//etc.

LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
params.setMargins(1, 1, 1, 1);
//etc.
text.setLayoutParams(params);