一步一步学android控件(之十五) —— DegitalClock & AnalogClock

原本计划DigitalClock和AnalogClock单独各一篇来写,但是想想,两个控件的作用都一样,就和在一起写一篇了。

DegitalClock和AnalogClock控件主要用于显示当前时间信息,使用也很简单。先看效果图:

一步一步学android控件(之十五) —— DegitalClock & AnalogClock

上面小的长方形为DegitalClock效果图,正方形的为AnalogClock,上图中是用了自定义背景widget_button_drawable.xml,详细内容参见一步一步学android控件(之三) —— Button。今天的主要内容在布局文件中——widget_lclock_layout.xml

 

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent" >



    <DigitalClock

        android:id="@+id/show_degital_clock"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentRight="true"

        android:layout_alignParentTop="true"

        android:layout_marginRight="94dp"

        android:layout_marginTop="124dp"

        android:background="@drawable/widget_button_drawable"

        android:textColor="@color/text_view_fill" />



    <AnalogClock

        android:id="@+id/show_analog_clock"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignRight="@+id/show_degital_clock"

        android:layout_below="@+id/show_degital_clock"

        android:layout_marginRight="31dp"

        android:layout_marginTop="61dp"

        android:background="@drawable/widget_button_drawable" />



</RelativeLayout>

其中 @color/text_view_fill的值为#e0FFFFCC 。 

 

activity——WidgetClockActivity 中的内容只有一个函数onCreate:

 

@Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.widget_lclock_layout);

    }

老规矩在ViewData.java中添加如下内容:

 

 

public static final int DEGITAL_CLOCK_ID = NUMBER_PICKER_ID + 1;

    public static final String DEGITAL_CLOCK_NAME = "DegitalClock";

private static final ViewData mDegitalClock = new ViewData(DEGITAL_CLOCK_NAME,

            DEGITAL_CLOCK_ID);

View_Datas.add(mDegitalClock);


WidgetsAdapter.java的handleItemClicked函数中添加如下内容:

 

 

case ViewData.DEGITAL_CLOCK_ID:

            intent.setClass(mContext, WidgetClockActivity.class);

            mContext.startActivity(intent);

            break;

 


注意:在api17中DegitalClock被deprecated,使用TextClock替代。


DegitalClock和AnalogClock控件就学到这里,下一个控件CheckBox.


 

你可能感兴趣的:(android控件)