从Java类调用数据时,Android setText()方法不起作用

从Java类调用数据时,Android setText()方法不起作用,java,android,settext,Java,Android,Settext,我很难让我的android应用程序在文本视图中显示正确的信息。添加祝酒词是为了确保变量正确地传递给kw1、kw2和kw3。正在传递对象“User”OK,我可以使用setText(“示例”)手动设置TextView,但我想使用以下代码将TextView数组中的文本更改为searchSuggest()方法返回的结果: for (int index3 = 0; index3 < validRecipe; index3++){ recipeText[index3].setText

我很难让我的android应用程序在文本视图中显示正确的信息。添加祝酒词是为了确保变量正确地传递给kw1、kw2和kw3。正在传递对象“User”OK,我可以使用setText(“示例”)手动设置TextView,但我想使用以下代码将TextView数组中的文本更改为searchSuggest()方法返回的结果:

for (int index3 = 0; index3 < validRecipe; index3++){
         recipeText[index3].setText((SetRecipes.recipes[temp[index3]].getName()));
      }
for(int index3=0;index3
SetRecipes是硬编码配方的Java类的名称-suggestMethod()是在它内部实现的,直到我无法让它工作并将代码复制到这里。(这解释了为什么该方法不再被调用,而是在OnCreate()中)

有人知道为什么文本视图中的文本没有改变吗

很抱歉这么问,但我已经在这里坐了好几个小时在谷歌上搜索,找不到确切的答案。我对编程比较陌生,也是Android的初学者,所以这可能是与将Java类与Android活动链接相关的非常基本的东西。如果您需要任何其他代码,请告诉我

public class SuggestResult extends Activity
    {

       String kw1, kw2, kw3;

       static TextView [] recipeText = new TextView[8];

       @Override

       public void onCreate(Bundle savedInstanceState){

      super.onCreate(savedInstanceState);
      setContentView(R.layout.suggest_results);
      User user1 = (User)getIntent().getSerializableExtra("user1");
      kw1 = user1.getDislikes(0);
  kw2 = user1.getDislikes(1);
  kw3 = user1.getDislikes(2);
  recipeText[0] = (TextView)findViewById(R.id.recipeText1);
  recipeText[1] = (TextView)findViewById(R.id.recipeText2);
  recipeText[2] = (TextView)findViewById(R.id.recipeText3);

  final int MAXRECIPES = 6;
  int[] temp = new int[MAXRECIPES];
  int validRecipe = 0;

  SetRecipes.setArray();

  for (int index = 0; index < MAXRECIPES; index++)
  {


     if (!(SetRecipes.recipes[index].searchkeywords1(kw1, kw2, kw3)))
     {
        temp[validRecipe] = index;

        validRecipe++;
     } //if
  }

  if (validRecipe == 0)
  {
     Context context = getApplicationContext();
     CharSequence text2 = "No valid recipes found!";
     int duration = Toast.LENGTH_SHORT;
     Toast toast = Toast.makeText(context, text2, duration);
     toast.show();
  }

  for (int index3 = 0; index3 < validRecipe; index3++)
  {
     recipeText[index3].setText((SetRecipes.recipes[temp[index3]].getName()));

  }

  Context context = getApplicationContext();
  CharSequence text2 = kw1;
  int duration = Toast.LENGTH_SHORT;
  Toast toast = Toast.makeText(context, text2, duration);
  toast.show();


 }
公共类SuggestResult扩展活动
{
串kw1、kw2、kw3;
静态文本视图[]recipeText=新文本视图[8];
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.建议结果);
用户user1=(用户)getIntent().getSerializableExtra(“用户1”);
kw1=user1.getDislikes(0);
kw2=user1.getDislikes(1);
kw3=user1.getDislikes(2);
recipeText[0]=(TextView)findViewById(R.id.recipeText1);
recipeText[1]=(TextView)findViewById(R.id.recipeText2);
recipeText[2]=(TextView)findViewById(R.id.recipeText3);
最终int MAXRECIPES=6;
int[]temp=新int[MAXRECIPES];
int validRecipe=0;
SetRecipes.setArray();
对于(int index=0;index
我还没有从您发布的内容中解释错误,但我建议您阅读有关使用ListView或RecyclerViews的教程。将适配器类与其中一个一起使用可能有助于您清理一些问题。请尝试(SetRecipes.recipes[temp[index3]].getName()).toString()添加到String()中似乎已经奏效了!我正在使用IntelliJ,它告诉我toString()是多余的,但它带来了所有的不同。谢谢aadi53。