Discuz! BBS

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 168|回复: 0

详解 setContentView(R.layout.activity_main);

[复制链接]

319

主题

458

帖子

2862

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2862
发表于 2025-7-16 06:58:52 | 显示全部楼层 |阅读模式
setContentView(R.layout.activity_main); 是 Android 开发中非常常用的一行代码,它通常出现在 Activity 的 onCreate 方法中。这行代码的作用是设置当前 Activity 的用户界面布局。
分析
setContentView 方法:
这是 Activity 类中的一个方法,用于指定该 Activity 的用户界面布局。
该方法接受一个布局资源 ID 作为参数,这个 ID 通常是在项目的 res/layout 目录下的 XML 文件中定义的。
R.layout.activity_main:
R 是一个自动生成的类,它包含了项目中所有资源的引用。
layout 是 R 类中的一个静态内部类,代表了所有的布局资源。
activity_main 是 layout 内部类中的一个静态常量,代表了 res/layout/activity_main.xml 文件的 ID。
activity_main.xml:
这是一个 XML 文件,定义了 Activity 的用户界面布局。
它通常包含各种 UI 组件(如按钮、文本框等)的布局和属性设置。
示例
假设你有一个简单的 activity_main.xml 文件,内容如下:
  1. <!-- res/layout/activity_main.xml -->
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3.     xmlns:tools="http://schemas.android.com/tools"
  4.     android:layout_width="match_parent"
  5.     android:layout_height="match_parent"
  6.     tools:context=".MainActivity">

  7.     <TextView
  8.         android:id="@+id/hello_world"
  9.         android:layout_width="wrap_content"
  10.         android:layout_height="wrap_content"
  11.         android:text="Hello World!"
  12.         android:layout_centerInParent="true"/>
  13. </RelativeLayout>
复制代码
在你的 MainActivity.java 文件中,你会这样使用 setContentView 方法:
  1. package com.example.myapp;

  2. import android.os.Bundle;
  3. import androidx.appcompat.app.AppCompatActivity;

  4. public class MainActivity extends AppCompatActivity {
  5.     @Override
  6.     protected void onCreate(Bundle savedInstanceState) {
  7.         super.onCreate(savedInstanceState);
  8.         setContentView(R.layout.activity_main);
  9.     }
  10. }
复制代码
android:usesCleartextTraffic="true"
这个属性与 setContentView 方法没有直接关系,但它是在 Android




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-8-1 06:35 , Processed in 0.010564 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表