在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Android/ 使用布局文件自定義Android組件
Android 應(yīng)用組件
使用布局文件自定義Android組件
Android通知
Android主題示例
Android JetPlayer實(shí)例
Android MediaPlayer(多媒體播放)
Android AbsoluteLayout
Android FrameLayout
Android Gestures/手勢(shì)
Android AutoCompleteTextView(自動(dòng)完成)實(shí)例
Android 資源組織和訪問(wèn)
Android ListView
Android GridView
Android數(shù)據(jù)備份
Android撥打電話
Android發(fā)送短信/SMS
Android ProgressDialog
SimpleCursorAdapter
Android發(fā)送電子郵件
Android Activity
Android TextView
Android事件處理
Android TableLayout
Android加載Spinner
Android內(nèi)容提供者
Android自定義字體
Android Service
Android CheckBox
Android Intent過(guò)濾器
Android LinearLayout
Android登錄實(shí)例
Android RadioButton
Android樣式和主題
Android自定義組件及屬性
Android UI控件
Android Animation(動(dòng)畫)實(shí)例
Android Camera(攝像頭)
Android ToggleButton
Android Clipboard(復(fù)制/剪貼板)
Android音頻捕獲(錄音)
發(fā)布Android應(yīng)用
Android Alertdialog(警告對(duì)話框)
Android圖片效果
Android內(nèi)部存儲(chǔ)
Android基于位置服務(wù)
Android RadioGroup
Android AutoCompleteTextView
Android Bluetooth(藍(lán)牙)實(shí)例
Android RelativeLayout
Android最佳實(shí)踐
Android本地化
Android自定義組件
Android教程
Android 架構(gòu)
Android UI布局
Android Button
Android Hello World示例
Android音頻管理器實(shí)例
ArrayAdapter
Android拖放
Android碎片/片段
Android圖片切換
Android JSON解析器
Android開(kāi)發(fā)環(huán)境搭建
Android Spinner
Android樣式示例
使用活動(dòng)代碼自定義Android組件
Android ImageButton
Android EditText
Android廣播接收器

使用布局文件自定義Android組件

下面的示例演示如何定義一個(gè)簡(jiǎn)單的Android定制組件,如何在里面活動(dòng)代碼實(shí)例化,而無(wú)需使用布局文件和代碼。

步驟 描述
1 使用Android Studio創(chuàng)建一個(gè)Android應(yīng)用程序,并將它命名為:DateViewDemounder2
2 創(chuàng)建 src/DateView.java 文件,并添加定義你的自定義組件的代碼。這將擴(kuò)展TextView并擁有更多的功能,顯示當(dāng)前的日期
3 修改 res/layout/activity_main.xml 文件,并添加代碼以及一些默認(rèn)的屬性創(chuàng)建DateView實(shí)例
4 運(yùn)行該應(yīng)用程序啟動(dòng)Android模擬器并驗(yàn)證應(yīng)用程序所做的修改結(jié)果。

以下是新的文件 src/com.yiibai.dateviewdemo/DateView.java 內(nèi)容,這將有附加功能以顯示當(dāng)前日期:

package com.yiibai.dateviewdemo;

import java.text.SimpleDateFormat;
import java.util.Calendar;

import android.content.Context;
import android.util.AttributeSet;
import android.widget.TextView;

public class DateView extends TextView {
   public DateView(Context context) {
      super(context);
      setDate();
   }

   public DateView(Context context, AttributeSet attrs) {
      super(context, attrs);
      setDate();
   }

   public DateView(Context context, AttributeSet attrs, int defStyle) {
      super(context, attrs, defStyle);
      setDate();
   }

   private void setDate() {
      SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");
      String today = dateFormat.format(Calendar.getInstance().getTime());
      setText(today);  // self = DateView is a subclass of TextView
   }

}

下面是修改后的主活動(dòng)文件 src/com.yiibai.dateviewdemo/MainActivity.java 的內(nèi)容。該文件可以包含每一個(gè)生命周期的基本方法。

package com.example.dateviewdemo;

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

public class MainActivity extends Activity {

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

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the 
        // action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
}

下面是 res/layout/activity_main.xml 文件的內(nèi)容: 

<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"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >
    

    <com.yiibai.dateviewdemo.DateView
     android:layout_width="match_parent"
     android:layout_height="wrap_content" 
     android:textColor="#fff"
     android:textSize="40sp"
     android:background="#000"
     />

</RelativeLayout>

以下將是  res/values/strings.xml  中定義兩個(gè)新常量的內(nèi)容: