Android 控件练习

更改与显示文字标签:
TextView 标签的使用

activity_main.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/TextView01"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TextView01" >
    </TextView>

    <TextView
        android:id="@+id/TextView02"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dp"
        android:autoLink="all"
        android:text="请访问:http://www.baidu.com" >
    </TextView>

</RelativeLayout>

Main.java

package com.example.birthday;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.widget.TextView;

public class HappyBirthday extends Activity {
    private TextView mTextView01;

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

        mTextView01 = (TextView) findViewById(R.id.TextView01);
        String str_2 = "欢迎来到Android 的TextView 世界...";
        mTextView01.setText(str_2);
    }

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

更改手机窗口画面底色:

drawable 定义颜色常数的方法,修改main.xml 中的屏幕背景颜色和TextView 的字体颜色

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/widget0"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/white" >

    <TextView
        android:id="@+id/name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_x="61px"
        android:layout_y="69px"
        android:text="账号"
        android:textColor="@color/darkgray" >
    </TextView>

    <TextView
        android:id="@+id/password"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_x="61px"
        android:layout_y="158px"
        android:text="密码"
        android:textColor="@color/darkgray" >
    </TextView>

    <EditText
        android:id="@+id/name_in"
        android:layout_width="120dip"
        android:layout_height="wrap_content"
        android:layout_x="114px"
        android:layout_y="57px"
        android:textSize="18sp" >
    </EditText>

    <EditText
        android:id="@+id/pwd_in"
        android:layout_width="120dip"
        android:layout_height="wrap_content"
        android:layout_x="112px"
        android:layout_y="142px"
        android:password="true"
        android:textSize="18sp" >
    </EditText>

</AbsoluteLayout>

在values 文件夹中定义一个drawable.xml 文件用来存放颜色值

<resources>

    <string name="app_name">Demo</string>
    <string name="menu_settings">Settings</string>
    <string name="title_activity_main">MainActivity</string>

    <color name="white">#FFFFFF</color>
    <color name="darkgray">#938192</color>
    <color name="lightgreen">#7cd12e</color>

</resources>

在mainActivity.java 代码中修改TextView 背景颜色

package com.example.demo;

import android.app.Activity;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.Menu;
import android.widget.TextView;

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        TextView text = (TextView) findViewById(R.id.name);
        // 由ID获得资源
        Resources myColor = getBaseContext().getResources();
        // getBaseContext()获得基础Context
        // getResources()获得资源
        Drawable color_M = myColor.getDrawable(R.color.lightgreen);
        // 由资源myColor来获得Drawable R.color.lightgreen是颜色值的ID引用
        text.setBackgroundDrawable(color_M);
        // 设置背景
    }

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

 取得手机屏幕大小:

MainActivity.java

package com.example.demo;

import android.app.Activity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.Menu;
import android.widget.TextView;

public class MainActivity extends Activity {

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

        DisplayMetrics displaysMetrics = new DisplayMetrics();
        // DisplayMetrics 一个描述普通显示信息的结构,例如显示大小、密度、字体尺寸
        getWindowManager().getDefaultDisplay().getMetrics(displaysMetrics);
        // getManager()获取显示定制窗口的管理器。
        // 获取默认显示Display对象
        // 通过Display 对象的数据来初始化一个DisplayMetrics 对象
        String showSize = "手机屏幕分辨率: \n" + displaysMetrics.widthPixels + "*"
                + displaysMetrics.heightPixels;
        TextView myShow = (TextView) findViewById(R.id.TextView01);
        myShow.setText(showSize);
    }

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

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/TextView01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView01" >
    </TextView>

</LinearLayout>

标题栏隐藏,状态栏隐藏(全屏):

package com.example.demo;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.Window;
import android.view.WindowManager;

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        HideTitle();

        // HideStatusBar();

        setContentView(R.layout.activity_main);
    }

    /**
     * 标题栏隐藏<br>
     * 在Activity.setCurrentView();之前调用此方法
     */
    private void HideTitle() {
        // TODO Auto-generated method stub
        requestWindowFeature(Window.FEATURE_NO_TITLE);
    }

    /**
     * 状态栏隐藏(全屏)<br>
     * 在Activity.setCurrentView();之前调用此方法
     */
    private void HideStatusBar() {
        // TODO Auto-generated method stub
        // 隐藏标题
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        // 定义全屏参数
        int flag = WindowManager.LayoutParams.FLAG_FULLSCREEN;
        // 获得窗口对象
        Window myWindow = this.getWindow();
        // 设置Flag标识
        myWindow.setFlags(flag, flag);
    }

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

------

原文地址:https://www.cnblogs.com/syc001/p/2785584.html