我有一个活动,显示简单的2个TextView,并从中获取文本 位于另一个类中的字符串数组。 我在加载时尝试加载数组中的第一个字符串,然后在下次加载活动时更改,将textview中的值更改为我在textView上首先显示的字符串之后的字符串,依此类推。 我更改了sharedprefrences的值,但它仍然只显示第一个字符串。问题是什么?我更改了字符串数组的索引值,但它仍然只显示第一个字符串。 谢谢你提前。
public class DailyMessage extends AppCompatActivity {
public SharedPreferences startExplePref;
String[] DescS;
String[] titleS;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_daily_message);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
String currentDateTimeString = DateFormat.getDateTimeInstance().format(new Date());
startExplePref = PreferenceManager.getDefaultSharedPreferences(this);
boolean isFirstRun = startExplePref.getBoolean("FIRSTRUN", true);
if (isFirstRun) {
SharedPreferences.Editor editor = startExplePref.edit().putBoolean("FIRSTRUN", false);
editor.commit();
startExplePref.edit().putInt("Day",0).commit();
}
TextView titleTV = (TextView)findViewById(R.id.title);
TextView descTV = (TextView)findViewById(R.id.description);
TextView dateTV = (TextView)findViewById(R.id.date);
dateTV.setText(currentDateTimeString);
int dayForTitle = startExplePref.getInt("Day",0);
titleTV.setText(DailyMessagesContent.content[dayForTitle]);
descTV.setText(DailyMessagesContent.content[dayForTitle]);
dayForTitle = dayForTitle++;
startExplePref.edit().putInt("Day",dayForTitle).commit();
}
}
这是来自其他类的字符串:
public static String content[] = {"test1", "test2","test3"};
答案 0 :(得分:0)
每次使用json_decode($content);
添加此变量时都会发生这种情况,但dayForTitle = dayForTitle++;
将返回原始值0,因此您只需将dayForTitle++
更改为单{{1} }}