Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:If语句执行一次_Java_Android_If Statement - Fatal编程技术网

Java Android:If语句执行一次

Java Android:If语句执行一次,java,android,if-statement,Java,Android,If Statement,因此,我正在开发一个应用程序,我遇到了一个问题。因此,我列出了一个列表,然后我将该活动中的数据解析到一个适配器活动中,该适配器活动接收该数据 这很好。但有一个小问题。有100个项目,当你输入它们时,它工作良好。我想放一些箭头,可以在其中导航而不退出。但是if只工作一次。我发现if只使用了一次。我尝试重新刷新活动,但它在活动中得到了数据解析。下面是代码,以便您可以更好地查看: public class NutritionAdapter extends Activity { TextView

因此,我正在开发一个应用程序,我遇到了一个问题。因此,我列出了一个列表,然后我将该活动中的数据解析到一个适配器活动中,该适配器活动接收该数据

这很好。但有一个小问题。有100个项目,当你输入它们时,它工作良好。我想放一些箭头,可以在其中导航而不退出。但是if只工作一次。我发现if只使用了一次。我尝试重新刷新活动,但它在活动中得到了数据解析。下面是代码,以便您可以更好地查看:

public class NutritionAdapter extends Activity {
    TextView Title;
    String TitleBar;
    TextView Text;
    Button right;
    Button left;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        setContentView(R.layout.nutrition_adapter_layout);
        super.onCreate(savedInstanceState);
        Title = (TextView) findViewById(R.id.title_nutirtion_tips_text_view);
        Text = (TextView) findViewById(R.id.tip_text_text_view);
        right = (Button) findViewById(R.id.right_button);
        left = (Button) findViewById(R.id.left_button);

        Title.setText(getIntent().getStringExtra("TitleNut") + "");

        TitleBar = Title.getText().toString();

        if (TitleBar.equals("Tip 1")) {
            Text.setText(getText(R.string.tip_1) + "");

        } else if (TitleBar.equals("Tip 2")) {
            Text.setText(getText(R.string.tip_2) + "");

        } else if (TitleBar.equals("Tip 3")) {
            Text.setText(getText(R.string.tip_3) + "");

        } else if (TitleBar.equals("Tip 4")) {
            Text.setText(getText(R.string.tip_4) + "");

        } else if (TitleBar.equals("Tip 5")) {
            Text.setText(getText(R.string.tip_5) + "");
        } else if (TitleBar.equals("Tip 6")) {
            Text.setText(getText(R.string.tip_6) + "");

        } .........
                 else if (TitleBar.equals("Tip 100")) {
            Text.setText(getText(R.string.tip_100) + "");

        }

        right.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

                if (TitleBar.equals("Tip 1")) {
                    Title.setText("Tip 2");
                    Text.setText(getText(R.string.tip_2) + "");

                } else if (TitleBar.equals("Tip 2")) {
                    Title.setText("Tip 3");
                    Text.setText(getText(R.string.tip_3) + "");

                } else if (TitleBar.equals("Tip 3")) {
                    Title.setText("Tip 4");
                    Text.setText(getText(R.string.tip_4) + "");
                                   .........................

                }

            }

        });

    }
}

创建活动、创建布局、创建视图,并将具有与开头定义相同的文本。这种情况每次都会发生。两者之间没有任何变化。显然,只有一个条件匹配

与其将条件逻辑放在onCreate中,不如将其放在事件处理程序中,如:OnClickListener,以便在某些内容(如用户输入或其他事件)更改后运行检查。

为什么希望在导航时调用onCreate,它在应用程序启动或被杀死后重新显示时调用。