zoukankan      html  css  js  c++  java
  • android(1)--hello world中的layout与 onCreate()

    1.概览

    本文记录了一个基本的android的运行过程,如何写hello请参考ref,这里只是记录基础过程:
    1.各种各样的layout.xml文件中写好了view,布局, 按钮等要的显示控件,安卓app运行的时候,这个xml文件就会被生成对应的view对象
    2.安卓运行的入口main文件是MainActivity.java, 程序入口main函数是onCreate()
    3.在onCreate()中使用setContentView()设置显示的layout.xml,就会加载这个layout对应的对象进行显示
    4.每个控件都有一个id,通过使用view.findViewById(),可以找到对应的空间对象进行操作,如果前面不加"view."则调用的是当前Activity的该方法,其会先去当前windows获取当前view,再通过当前view去执行findViewById()

    2.正文

    通过ref中的2.Android Hello World 实例可以看到,其创建了一个文件 activity_main.xml, 其中定义了一个TextView, 上面的Text放了"hello_world",该控件的id为"hello_world"

    <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:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_centerHorizontal="true"
          android:layout_centerVertical="true"
          android:padding="@dimen/padding_medium"
          android:text="@string/hello_world"
          android:id="@+id/hello_world"
          tools:context=".MainActivity" />
    
    </RelativeLayout>
    
    

    然后在 MainActivity.java的onCreate() 中可以看到 setContentView() 设置了要显示的为 R.layout.activity_main(所有的layout资源都以id的形式放在R中进行管理), 通过findViewById()找到id为hello_world的TextView, 最后调用tv.setText()设置Text

    public class MainActivity extends Activity {
    
       @Override
       public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main); //设置要显示的layout
          TextView tv = findViewById(R.id.hello_world); //找到该控件
          tv.setText("a new hello world");        //设置text
       }
    
       @Override
       public boolean onCreateOptionsMenu(Menu menu) {
          getMenuInflater().inflate(R.menu.activity_main, menu);
          return true;
       }
    }
    

    ref

    1.android入门小Demo
    2.Android Hello World 实例

  • 相关阅读:
    全美在线上云 保证上千考场统一监考
    如何构建一个较为通用的业务技术架构
    在tomcat下context.xml中配置各种数据库连接池
    Java中的多线程
    彻底理解ThreadLocal
    plsql工具使用
    软件清单
    EL表达式
    AOP(execution表达式)
    JSTL标签库之核心标签
  • 原文地址:https://www.cnblogs.com/ishen/p/12345978.html
Copyright © 2011-2022 走看看