我正在创建一个android studio简单演示。我正在登录。但是当按下提交按钮时,它不会改变活动。 Main.java
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
/* Get button Text1 Text2 */
final EditText edUsername = (EditText) findViewById(R.id.etUser);
final EditText edPassword = (EditText)findViewById(R.id.etPass);
Button btnValidate = (Button)findViewById(R.id.bSubmit);
btnValidate.setOnClickListener(new OnClickListener()
{
public void onClick(View arg0)
{
String uname = edUsername.getText().toString();
String pass = edPassword.getText().toString();
if(uname.equals("user") && pass.equals("12345"))
{
Intent intent = new Intent(Main.this,Success.class);
intent.putExtra("username",edUsername.getText().toString());
startActivity(intent);
}
else
{
Toast.makeText(Main.this, "Invalid Usename password pair.", Toast.LENGTH_LONG).show();
}
}
});
}
}
Success.java
public class Success extends Activity
{
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.success);
TextView tv = (TextView) findViewById(R.id.textView1);
tv.setText("Welcome ,"+getIntent().getExtras().getString("username"));
}
}
修改
<activity
android:name=".Success"
android:label="AndroidTest"
android:screenOrientation="portrait"
/>
<activity
android:name=".AndroidTest"
android:label="AndroidTest" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
有什么问题?刚刚使用Mainfest文件内容对其进行了编辑。再次,当按下提交按钮时,它不会改变活动
答案 0 :(得分:0)
您是否尝试在Manifest文件中添加Success Activity?类似下面的代码?
<activity
android:name=".Success"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@style/AppTheme" />
希望这有帮助!
答案 1 :(得分:0)
问题在于您的启动活动,应该是这样的
Intent intent = new Intent(this,Success.class);
intent.putExtra("username",edUsername.getText().toString());
startActivity(intent);
或
Intent intent = new Intent(Main.class,Success.class);
intent.putExtra("username",edUsername.getText().toString());
startActivity(intent);
在new intent(_,_)
中,您需要先传递上下文。这可以通过使用this
,getActivity()
,getApplicationContext()
来完成。希望这不会太晚