-1

我正在制作一个 android 应用程序,其中有 3 个 textview 及其相应的 2 个微调器和 edittext。我希望当用户选择“次数”作为微调器中的字符串 3 时,下一个屏幕中应该有 3 个文本视图

这是一个截图

http://postimage.org/image/vk9ngksk9/8e94a435/

意思是说如果我从微调器中选择 2,则下一个屏幕中应该有 2 个文本视图。

这是下一个屏幕的屏幕截图

http://postimage.org/image/n25axcf8x/dbb0775d/

所以我希望文本视图的数量与微调器选择相对应。

4

2 回答 2

2

您可以从 spinner 获取 int 值并将其保存到某个全局位置,然后从下一个屏幕中您可以访问该值,并且您可以将 textView 与该值一样膨胀。像这样的东西:

View main = (View) findViewById(R.id.mainView);
for(int i = 0; i < spinnerValue; i++) {
     TextView tv = new TextView(getContext());
     tv.setText(i+". value");

     main.addView(tv);
}

这里的主视图是您要添加文本视图的任何地方...

于 2012-07-17T14:32:07.383 回答
2

如果我理解正确,那么您应该做的是解析所选项目的意图,如下所示:

在您的第一个活动中:

Intent i = new Intent(firstActivity.this, secondActivity.class);
//Here I set an ID and the value so you can find it in the second activity
i.putExtra(nbTextView, Integer.parseInt(spinner.getSelectedItem());
startActivity(i);

在您的第二个活动中:

Bundle data = getIntent().getExtras();
nbTextView = data.getInt("nbTextView");

然后使用此变量动态创建您的电视。

希望能帮助到你。

于 2012-07-17T14:38:10.700 回答