ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Android 基础知识:Activity

2022-09-10 03:00:49  阅读:402  来源: 互联网

标签:基础知识 intent 应用 Activity Intent Android 电子邮件 message


概念

Activity 是与用户交互的入口点,简单来说 Activity 类似于一个 Web 的页面,表示拥有整个屏幕的界面

电子邮件应用可能有一个显示新电子邮件列表的 Activity、一个用于撰写电子邮件的 Activity 以及一个用于阅读电子邮件的 Activity。所以,一个 App 拥有多个 Activity。而一个 Web App 也是由多个页面组成的。

尽管这些 Activity 通过协作在电子邮件应用中形成一种紧密结合的用户体验,但每个 Activity 都独立于其他 Activity 而存在。因此,其他应用可以启动其中这个应用中的任何一个 Activity(如果电子邮件应用允许)。

也就是说,A 应用中的某个 Activity 在允许的情况下,可以被 B 应用的某个 Activity 调用。例如,相册应用可以点击分享按钮给你的 QQ 好友。

案例

通过Intent做一个简单的应用内 A Activity 跳转到 B Activity,并展示消息在 B Activity 的案例。

Intent是在相互独立的组件(比如两个 Activity)之间提供运行时绑定功能的对象。可以应用于两个应用间的通讯交互,也能够应用于在同一个应用下不同组件的交互(Activity、Service、Broadcast Receiver)。

MainActivity

界面代码

<EditText
  android:id="@+id/editText"
  android:layout_width="200dp"
  android:layout_height="wrap_content"
  android:layout_marginStart="104dp"
  android:layout_marginTop="340dp"
  android:hint="@string/input_hint"
  app:layout_constraintStart_toStartOf="parent"
  app:layout_constraintTop_toTopOf="parent" />

<Button
  android:id="@+id/routeButton"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_marginStart="160dp"
  android:layout_marginTop="72dp"
  android:onClick="sendMessage"
  android:text="@string/button_text"
  app:layout_constraintStart_toStartOf="parent"
  app:layout_constraintTop_toBottomOf="@+id/editText" />

Button 控件绑定点击事件sendMessage

逻辑代码

public class MainActivity extends AppCompatActivity {
  public static final String EXTRA_MESSAGE = "com.example.Message";

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

  public void sendMessage(View view) {
    Intent intent = new Intent(this, MessageActivity.class);
    EditText editText = findViewById(R.id.editText);
    String message = editText.getText().toString();
    intent.putExtra(EXTRA_MESSAGE, message);
    startActivity(intent);
  }
}

MessageActivity

界面代码

<TextView
  android:id="@+id/textView"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:textSize="80sp" />

逻辑代码

public class MessageActivity extends AppCompatActivity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_message);

    Intent intent = getIntent();
    String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
    TextView textView = findViewById(R.id.textView);
    textView.setText(message);
  }

}

演示效果

image

标签:基础知识,intent,应用,Activity,Intent,Android,电子邮件,message
来源: https://www.cnblogs.com/Enziandom/p/16673768.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有