zoukankan      html  css  js  c++  java
  • Android入门教程(五)之更改与显示文字标签TextView标签的使用(转)

    我们写了HelloAndroid 之后,一直觉得没有写半行代码对不起自己,所以本节,我们将在HelloAndroid 基础之上,进行与TextView 文字标签的第一次接触.在此例中,将会在Layout 中创建TextView 对象,并学会定义res/values/string.xml 里的字符串常数,最后通过TextViewsetText 方法,在预加载程序之初,更改TextView 文字.

    首先看一下运行结果如下图:

    首先"欢迎来到魏祝林的博客"这几个字是从什么地方来的呢,我们是在res->values->string.xml里面加了如下一句(黑体):

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="hello">Hello World, HelloAndroid!</string>
        <string name="app_name">HelloAndroid</string>
        <string name="textView_text">欢迎来到魏祝林的博客</string>
    </resources>

    而加载"欢迎来到魏祝林的博客"是在main.xml (定义手机布局界面的)里加入的,如下面代码,其中我们闺将@string/hello 改成了@string/textView_text .

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/textView_text"
        />
    </LinearLayout>

    这样我们运行HelloAndroid.java时,手机画面里将显示"欢迎来到魏祝林的博客"的欢迎界面,貌似我们又是没有写代码,只是在.xml加了一两行搞定,对习惯了编程的同学,感觉有点不适应.其实在HelloAndroid.java写代码也可以完全达到一样的效果.

    在这里我们首先将main.xml回归到原样在原样的基础上加上一行见下方(黑体行)这里ID是为了在Java类里,找到TextView对象,并且可以控制它:

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

        android:id="@+id/myTextView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello"
        />
    </LinearLayout>

    在主程序HelloAndroid.java里代码如下:

    package com.android.test;
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.TextView;

    public class HelloAndroid extends Activity {
       
        private TextView myTextView;
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            //载入main.xml Layout,此时myTextView:text为hello
            setContentView(R.layout.main);
          
            //使用findViewById函数,利用ID找到该TextView对象
            myTextView = (TextView)findViewById(R.id.myTextView);
            String welcome_mes = "欢迎来到魏祝林的博客";


            //利用setText方法将TextView文字改变为welcom_mes
            myTextView.setText(welcome_mes);
        }

    两种方法都可以达到一样的效果,不过我在此建议用第一种比较规范一点.这一节就到此为至!!下一节我们将讲一下Android五大布局.希望大家继续关注~

    注意:

    1.setContentView(R.layout.main); 表示加载res/layout/main.xml布局文件的内容呈现在模拟器中

    2.myTextView = (TextView)findViewById(R.id.myTextView); 在布局文件中查找id为myTextView的控件,并将其强转为TextView.

     

  • 相关阅读:
    桌面上嵌入窗口(桌面日历)原理探索(将该窗口的Owner设置成桌面的Shell 窗口,可使用SetWindowLong更改窗口的GWL_HWNDPARENT,还要使用SetWindowPos设置Z-Order)
    QQ截图时窗口自动识别的原理(WindowFromPoint, ChildWindowFromPoint, ChildWindowFromPointEx,RealChildWindowFromPoint)
    如何给开源的DUILib支持Accessibility(论述了DUILib的六个缺点,很精彩)
    从点击Button到弹出一个MessageBox, 背后发生了什么(每个UI线程都有一个ThreadInfo结构, 里面包含4个队列和一些标志位)
    Sessions, Window Stations and Desktops(GetDesktopWindow函数得到的桌面句柄, 是Csrss.exe创建的一个窗口)
    skip list
    理解对象模型图(Reading OMDS)
    Javascript与当前项目的思考
    Stub和Mock的理解
    https学习总结
  • 原文地址:https://www.cnblogs.com/l_dragon/p/2132351.html
Copyright © 2011-2022 走看看