2016-03-21 21 views
0

我知道这对你来说很简单,但我希望用户输入一个特定的值,这个值的另一个动作如何让输入一个特定的值,而在另一个活动出现的东西

前的含义:如果用户输入“1FC3”,则第二个活动将显示“Milk”

+0

'HashMap'可能对你有帮助。 –

+0

switch语句? –

+0

[活动和意图(?)](http://stackoverflow.com/questions/16260028/whats-the-difference-between-activity-and-intent-in-android) – user2450263

回答

0

在其中一个活动中创建一个静态变量。使用您的输入更新它,然后在2.活动打开时创建一个使用静态变量的开关案例

public static Sting var; 
TextView tv; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     tv = findv.... 
     if(var.equals("1FC3")) 
      tv.setText("Milk"); 
} 
0

假设你有Activity1.j ava :(你的MainActivity) 它的XML有一个EditText和一个Button。该按钮具有id mybutton和编辑文本myedittext。 内其onCreate方法,您从XML获得按钮,当你点击按钮,一个新的活动(Activity2.java)与第一个活动的编辑文本到您的新活动的文本值开始:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    final EditText editText = (EditText) findViewById(R.id.myedittext); 
    Button button = (Button) findViewById(R.id.mybutton); 
    button.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent intent = new Intent(this, Activity2.class); 
      intent.putExtra("myinput", editText.getText().toString()); 
      startActivity(intent); 

     } 
     }); 


} 

其xml中的Activity2具有带id mytv的TextView。 现在在第二个Activity(Activity2.java)的onCreate里面:

public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_two); 
    TextView tv = (TextView) findViewById(R.id.mytv); 
    Bundle extras = getIntent().getExtras(); 
    if(extras != null) { 
      if(extras.getString("myinput").equals("1FC3")){ 
       tv.setText("Milk"); 
      } 

    } 


} 
相关问题