• 鍍金池/ 教程/ Android/ 使用布局文件自定義Android組件
    Android 應用組件
    使用布局文件自定義Android組件
    Android通知
    Android主題示例
    Android JetPlayer實(shí)例
    Android MediaPlayer(多媒體播放)
    Android AbsoluteLayout
    Android FrameLayout
    Android Gestures/手勢
    Android AutoCompleteTextView(自動(dòng)完成)實(shí)例
    Android 資源組織和訪(fǎng)問(wèn)
    Android ListView
    Android GridView
    Android數據備份
    Android撥打電話(huà)
    Android發(fā)送短信/SMS
    Android ProgressDialog
    SimpleCursorAdapter
    Android發(fā)送電子郵件
    Android Activity
    Android TextView
    Android事件處理
    Android TableLayout
    Android加載Spinner
    Android內容提供者
    Android自定義字體
    Android Service
    Android CheckBox
    Android Intent過(guò)濾器
    Android LinearLayout
    Android登錄實(shí)例
    Android RadioButton
    Android樣式和主題
    Android自定義組件及屬性
    Android UI控件
    Android Animation(動(dòng)畫(huà))實(shí)例
    Android Camera(攝像頭)
    Android ToggleButton
    Android Clipboard(復制/剪貼板)
    Android音頻捕獲(錄音)
    發(fā)布Android應用
    Android Alertdialog(警告對話(huà)框)
    Android圖片效果
    Android內部存儲
    Android基于位置服務(wù)
    Android RadioGroup
    Android AutoCompleteTextView
    Android Bluetooth(藍牙)實(shí)例
    Android RelativeLayout
    Android最佳實(shí)踐
    Android本地化
    Android自定義組件
    Android教程
    Android 架構
    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應用程序,并將它命名為:DateViewDemounder2
    2 創(chuàng )建 src/DateView.java 文件,并添加定義你的自定義組件的代碼。這將擴展TextView并擁有更多的功能,顯示當前的日期
    3 修改 res/layout/activity_main.xml 文件,并添加代碼以及一些默認的屬性創(chuàng )建DateView實(shí)例
    4 運行該應用程序啟動(dòng)Android模擬器并驗證應用程序所做的修改結果。

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

    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 的內容。該文件可以包含每一個(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 文件的內容: 

    <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è)新常量的內容:

    草莓视频在线观看视频6_免费草莓视频_草莓视频在线下载免费官网_草莓视频黄色在线观看