gpt4 book ai didi

java - Android Studio : Create a for-loop for strings

转载 作者:行者123 更新时间:2023-12-01 16:31:50 24 4
gpt4 key购买 nike

好吧,我正在处理一个表,我从共享首选项中获取所需的所有内容,将它们保存在字符串中,然后在表的单行中设置文本。它有效,但问题是:我觉得如果我只使用 foo 循环,那么用更少的代码就可以做到这一点。如果我愿意的话,这也可以添加和删除行。我唯一的问题是:我不知道如何制作这个 for 循环。我的意思是我需要滚动浏览“e1、e2、e3、d1...”等。你们有人有想法吗?

代码如下:

   e1 = (TextView) findViewById(R.id.e1);
e2 = (TextView) findViewById(R.id.e2);
e3 = (TextView) findViewById(R.id.e3);

d1 = (TextView) findViewById(R.id.d1);
d2 = (TextView) findViewById(R.id.d2);
d3 = (TextView) findViewById(R.id.d3);

t1 = (TextView) findViewById(R.id.t1);
t2 = (TextView) findViewById(R.id.t2);
t3 = (TextView) findViewById(R.id.t3);

n1 = (TextView) findViewById(R.id.n1);
n2 = (TextView) findViewById(R.id.n2);
n3 = (TextView) findViewById(R.id.n3);


//shared preferences
SharedPreferences mPreferences = PreferenceManager.getDefaultSharedPreferences(this);
final SharedPreferences.Editor editor = mPreferences.edit();


//first row
String event1 = mPreferences.getString("event", "");
String date1 = mPreferences.getString("date", "");
String time1 = mPreferences.getString("time","");
String name1 = mPreferences.getString("name","");

//second row
String event2 = mPreferences.getString("event1", "");
String date2 = mPreferences.getString("date1", "");
String time2 = mPreferences.getString("time1","");
String name2 = mPreferences.getString("name1","");

//third row
String event3 = mPreferences.getString("event2", "");
String date3 = mPreferences.getString("date2", "");
String time3 = mPreferences.getString("time2","");
String name3 = mPreferences.getString("name2","");


//set text in the rows
e1.setText(event1);
d1.setText(date1);
t1.setText(time1);
n1.setText(name1);

e2.setText(event2);
d2.setText(date2);
t2.setText(time2);
n2.setText(name2);

e3.setText(event3);
d3.setText(date3);
t3.setText(time3);
n3.setText(name3);

最佳答案

嗯,在 Java 中你应该依赖运行时检查。这是很好的做法!当您想节省一些空间并动态引用变量执行以下操作时:

for (int i = 0; i < 3; i++) {
---- dynamically refer to variables here somehow ---
}

你剥夺了自己进行运行时检查的权利。因此可能会出现错误。

您可以通过执行以下操作来节省一些空间:

e1.setText(mPreferences.getString("event", ""));
d1.setText(mPreferences.getString("date", ""));
t1.setText(mPreferences.getString("time",""));
n1.setText(mPreferences.getString("name",""));

关于java - Android Studio : Create a for-loop for strings,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62023705/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com