android - 如何在Android应用程序中单击按钮打开第二个 Activity

标签 android android-intent android-activity

我正在学习构建 Android 应用程序,我需要一些具体的帮助。我似乎无法理解需要更改哪些模板代码,哪些是静态的。

LAYOUT 文件夹中,我的 ACTIVITY_MAIN.XML 显示为

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="horizontal">

 <Button
    android:id="@+id/button1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="@string/main_buttons_photos" />

 </LinearLayout>

接下来,我有我的第二个 Activity ACTIVITY_SEND_PHOTOS.XML 这是

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent" >

 <TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:text="@string/hello_world"
    tools:context=".SendPhotos" />

 <TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:text="@string/title_activity_send_photos"
    android:textAppearance="?android:attr/textAppearanceLarge" />

 </RelativeLayout>

然后我有我的 MainActivity.java(这是 .class 吗?)这读 包 com.example.assent.bc;

 import android.os.Bundle;
 import android.app.Activity;
 import android.view.Menu;
 import android.view.View;

 public class MainActivity extends Activity {

 @Override
 public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);
 }

 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
     getMenuInflater().inflate(R.menu.activity_main, menu);
     return true;
 }
 /** Called when the user clicks the Send button */
 public void sendMessage(View view) {
     // Do something in response to button
 }
 }

然后是我的 SendPhotos.java 文件;

 package com.example.assent.bc;

 import android.os.Bundle;
 import android.app.Activity;
 import android.view.Menu;
 import android.view.MenuItem;
 import android.support.v4.app.NavUtils;

 public class SendPhotos extends Activity {

 @Override
 public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_send_photos);
    getActionBar().setDisplayHomeAsUpEnabled(true);
 }

 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_send_photos, menu);
    return true;
 }


 @Override
 public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case android.R.id.home:
            NavUtils.navigateUpFromSameTask(this);
            return true;
    }
    return super.onOptionsItemSelected(item);
 }

 }

我希望我的主要 Activity 中的按钮链接到我的 sendphotos Activity ,只需打开该 Activity ,没有什么花哨的,不发送任何数据或任何东西。

我知道在某个地方我需要我的

 Intent i = new Intent(FromActivity.this, ToActivity.class);
 startActivity(i);

但我不知道用什么替换 ToActivity.class 或者我还需要什么。

最佳答案

您可以通过单击按钮移动到所需的 Activity 。只需添加这一行。

android:onClick="sendMessage"

xml:

 <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="sendMessage"
        android:text="@string/button" />

在你的主要 Activity 中添加这个方法:

public void sendMessage(View view) {
    Intent intent = new Intent(FromActivity.this, ToActivity.class);
    startActivity(intent);
}

还有最重要的一点:不要忘记在 manifest.xml

中定义您的 Activity
 <activity
      android:name=".ToActivity"
      android:label="@string/app_name"/>

关于android - 如何在Android应用程序中单击按钮打开第二个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13194081/

相关文章:

java - 在Android中,什么线程可运行传递给Executors.newSingleThreadScheduledExecutor运行?

启动 Activity 的 Android 简单小部件

java - Intent Activity 切换到随机 Activity

java - 应用程式在 “startActivity(intent);”时当机

android - 开始/停止按钮 radio 流服务

没有父 Activity 的android Activity

java - 是否有用于 XMPP 客户端的 Android native 库?

android - 根据手机屏幕尺寸设置 ImageView 的尺寸

android - 从 Android 的 Twitter OAuth 中提取 URI

android - 如何使用四个 (x,y) 坐标裁剪图像