通过editText启动活动

时间:2012-06-04 10:12:07

标签: android android-edittext

我想通过editText的文本开始一项活动。

例如:当我输入任何字符串时,例如'string',它应该自动启动一个活动。

5 个答案:

答案 0 :(得分:1)

您应该使用textwatcher事件来实现它。因为每次用户在edittext中输入任何内容时都会调用它。

我希望它对你有所帮助。

答案 1 :(得分:1)

我认为使用TextWatcher你可以启动活动。你只需检查afterTextChanged方法中的字符串......

if(s.toString().equals("string")){
 //startActivity here
}

像,

edittext.addTextChangedListener(new TextWatcher() {

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub

            }

            @Override
            public void beforeTextChanged(CharSequence s, int start, int count,
                    int after) {
                // TODO Auto-generated method stub

            }

            @Override
            public void afterTextChanged(Editable s) {
                if(s.toString().equals("string")){
                            //startActivity here
                        }
            }
        });

答案 2 :(得分:0)

您可以使用OnkeyListener

myEditTextField.setOnKeyListener(new OnKeyListener() {
     @Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
    if (event.getAction() == KeyEvent.ACTION_UP) {
        if (myEditTextField.getText().toString().trim().equals("your string")) {
                    // start your activity
                }
            }
    }
});

答案 3 :(得分:0)

使用这种方式

  final EditText et = (EditText) findViewById(R.id.editText1);


et.addTextChangedListener(new TextWatcher()
     {
    public void afterTextChanged(Editable s){

        }
    }
    public void beforeTextChanged(CharSequence s,int start,int count, int after){} 
    public void onTextChanged(CharSequence s, int start, int before, int count) {
            if(s.length() > 0) {
             if(et.getText().toString().equals("string"){
                      Intent i=new Intent(YourActivity.this,SecondActivity.class);
                      startActivity(i);
            }
     }
   });

答案 4 :(得分:-1)

这是NextActivity.java

public class NextActivity extends Activity {

//Your member variable declaration here

// Called when the activity is first created.
@Override
public void onCreate(Bundle savedInstanceState) {
//Your code here
}
}

创建新Activity后,我们必须在文件'AndroidManifest.xml'中注册它。 对于注册,我们必须在'AndroidManifest.xml'中创建一个条目

**<activity android:name=".NextActivity" android:label="@string/app_name"/>**