Java 如何从一个屏幕导航到另一个屏幕
如何从一个活动屏幕导航到另一个活动屏幕?在第一个屏幕中,我有一个按钮,如果我单击该按钮,它必须移动到另一个活动屏幕。最简单的情况(从活动中调用): 详情如下: 这里我们为按钮x定义了一个监听器。操作系统将调用此方法并启动Intent i中引用的活动 以下是官方教程示例:Java 如何从一个屏幕导航到另一个屏幕,java,android,android-activity,Java,Android,Android Activity,如何从一个活动屏幕导航到另一个活动屏幕?在第一个屏幕中,我有一个按钮,如果我单击该按钮,它必须移动到另一个活动屏幕。最简单的情况(从活动中调用): 详情如下: 这里我们为按钮x定义了一个监听器。操作系统将调用此方法并启动Intent i中引用的活动 以下是官方教程示例: 使用以下代码..我希望这将对您有所帮助 Button button = (Button)findViewById(R.id.xxx); button.setOnClickListener(new OnClickListener(
使用以下代码..我希望这将对您有所帮助
Button button = (Button)findViewById(R.id.xxx);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(CurrentActivity.this,NextActivity.class);
startActivity(intent);
}
});
xxx是按钮xml中的id。此任务可以使用android的一个名为Intents的主要构建块和属于活动类的方法
public void startActivity(Intent Intent)
完成
Button btn = (Button)findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(TestActivity.this,second.class));
}
});
意图是对要执行的操作的抽象描述。它可以与startActivity一起使用以启动活动,broadcastIntent将其发送到任何感兴趣的BroadcastReceiver组件,以及startService(Intent)或bindService(Intent、ServiceConnection、int)与后台服务通信
Intent提供了一种工具,用于在不同应用程序中的代码之间执行后期运行时绑定。它最重要的用途是在启动活动时,可以将其视为活动之间的粘合剂。它基本上是一个被动数据结构,包含对要执行的操作的抽象描述
参考官方文件--
public void startActivity(意图)
——用于启动新活动
因此,假设您有两个活动类,在一个按钮上单击OnClickListener()
您想从一个活动移动到另一个活动,然后--
Intent(PresentActivity.this, NextActivity.class)
最后,这将是完整的代码
public class PresentActivity extends Activity {
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.content_layout_id);
final Button button = (Button) findViewById(R.id.button_id);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
Intent activityChangeIntent = new Intent(PresentActivity.this, NextActivity.class);
// currentContext.startActivity(activityChangeIntent);
PresentActivity.this.startActivity(activityChangeIntent);
}
});
}
}
此示例与button click相关。您可以在button click的
OnClickListener()
中编写的任何地方使用代码,在您想要在活动之间切换的任何地方使用代码。从一个活动切换到另一个活动非常简单,但对于新的活动来说很棘手。
您的下一个类必须在AndroidManifest.xml
中定义。这是测试仪类:
<activity
android:name=".Tester"
android:label="@string/title_activity_tester" >`enter code here`
</activity>
final Button button = (Button) findViewById(R.id.btnGo);// btnGo is id
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(CurrentClass.this, Tester.class);
startActivity(i);
}
`在此处输入代码`
最终按钮按钮=(按钮)findViewById(R.id.btnGo);//btnGo是id
setOnClickListener(新视图.OnClickListener(){
公共void onClick(视图v){
意图i=新意图(CurrentClass.this,Tester.class);
星触觉(i);
}
您可以使用以下代码片段导航到下一个屏幕:
科特林
爪哇
这里有一个参考:在您的方法中
创建乐趣(savedInstanceState:Bundle?
添加这个
your_btn_id.setOnClickListener{
val intent = Intent(this, yourpagename::class.java)
startActivity(intent)
}
到目前为止,如果不起作用,请检查是否添加了这两个文件
import android.content.Intent
import kotlinx.android.synthetic.main.activity_otp.*
或者你可以简单地使用
请尝试以下代码:
Button my_btn;
my_btn = findViewById(R.id.submit_btn);
my_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
setContentView(R.layout.activity_2);
}
});
只需转到XML文件并在按钮XML中添加Onclick=“opennewactivity” 然后转到java代码并创建opennewactivity类,您可以将其设置为我的clciking alt+输入xml代码的“opennewactivity”
Intent intent = new Intent(this, newacivity.class);
startActivity(intent);
若你们不想让用户再次回到第一个活动,那个就写下这个
Intent intent = new Intent(this, newactivity.class);
startActivity(intent);
finish();
这是组件的id。等等,这是否编译?欢迎使用堆栈溢出。请您的答案解释此代码的作用,以及它如何改进这个11年前的问题的许多现有答案,以便对其他有类似问题的用户有用。堆栈溢出时不鼓励使用仅代码的答案,因为它们不会明白它是如何解决问题的。
<activity
android:name=".Tester"
android:label="@string/title_activity_tester" >`enter code here`
</activity>
final Button button = (Button) findViewById(R.id.btnGo);// btnGo is id
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(CurrentClass.this, Tester.class);
startActivity(i);
}
startActivity(Intent(this, LoginActivity::class.java))
startActivity(new Intent(this, LoginActivity.class))
your_btn_id.setOnClickListener{
val intent = Intent(this, yourpagename::class.java)
startActivity(intent)
}
import android.content.Intent
import kotlinx.android.synthetic.main.activity_otp.*
Intent intentobj=new Intent(FromActivity.this,ToActivity.class);
startActivity(intentobj);
startActivity(new Intent(FromActivity.this,ToActivity.class));
Button my_btn;
my_btn = findViewById(R.id.submit_btn);
my_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
setContentView(R.layout.activity_2);
}
});
Button navigate;
navigate = findViewById(R.id.button);
navigate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"Navigate another Activity",Toast.LENGTH_LONG).show();
Intent intent = new Intent(MainActivity.this,MainActivity2.class);
startActivity(intent);
}
});
Intent intent = new Intent(this, newacivity.class);
startActivity(intent);
Intent intent = new Intent(this, newactivity.class);
startActivity(intent);
finish();
Cartoon_card.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
newActivity();
}
});
}
public void newActivity()
{
Intent selectClass= new Intent(getApplicationContext(), com.example.fyp.videoplayer.class);
startActivity(selectClass);
}