国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android學習系列一用按鈕實現顯示時間

2019-12-12 06:27:09
字體:
來源:轉載
供稿:網友

我們先用AndroidStudio新建一個項目,選擇空白模板,然后像其中拖入兩個Button,將他們的id分別命名為btDate(顯示日期),btTime(顯示時間),他的模板XML代碼很簡單

<?xml version="." encoding="utf-"?><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="com.neil.ad.MainActivity"><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="顯示當前日期"android:id="@+id/btDate"android:layout_alignParentLeft="true"android:layout_alignParentStart="true"android:layout_alignParentTop="true" /><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="顯示當前時間"android:id="@+id/btTime"android:layout_below="@+id/btDate"android:layout_alignParentLeft="true"android:layout_alignParentStart="true" /></RelativeLayout>

如圖所示


一個標準的Android應用程序窗口類需要繼承android.app.Activity類,至少實現onCreate方法來初始化這個窗口。接下來實現方法

package com.neil.ad;import android.app.Activity;import android.app.AlertDialog;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;import java.text.SimpleDateFormat;import java.util.Date;public class MainActivity extends Activity implements View.OnClickListener{private void showDialog(String title,String msg){AlertDialog.Builder builder=new AlertDialog.Builder(this);//設置對話框的圖標builder.setIcon(android.R.drawable.ic_dialog_info);//設置對話框的標題builder.setTitle(title);//設置對話框的信息builder.setMessage(msg);//設置對話框的按鈕builder.setPositiveButton("確定",null);//顯示對話框builder.create().show();Intent intent;}//初始化窗口@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//裝載了View(剛才編寫的XML文件)setContentView(R.layout.activity_main);//獲得兩個按鈕對象的實例Button btDate=(Button)findViewById(R.id.btDate);Button btTime=(Button)findViewById(R.id.btTime);//為兩個按鈕添加單擊事件的監聽(實現了OnClickListener接口的對象)btDate.setOnClickListener(this);btTime.setOnClickListener(this);}//兩個按鈕共用一個單擊事件,通過按鈕的id區分單擊了哪個按鈕@Overridepublic void onClick(View v) {switch (v.getId()){case R.id.btDate: {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//顯示當前日期showDialog("當前日期", sdf.format(new Date()));break;}case R.id.btTime: {SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");//顯示當前日期showDialog("當前時間", sdf.format(new Date()));break;}}}}

注:

1,AlertDialog可用于顯示對話框

2,如果多個控件共用一個事件方法,必須在布局文件中指定控件標簽的android:id屬性,并且每個控件的id屬性不能相同

3.res(resource)目錄中的每一個資源文件都會在gen目錄下的R類中生成一個int類型的變量,用于標識當前資源文件。所以在onCreate方法中可以通過R.layout.activity_main引用activity_main.xml文件,這說明已經在R類的layout子類中生成了一個叫activity_main的靜態int類型的變量,layout類的代碼的代碼如下

4,如果使用單擊事件,必須實現OnClickListener接口,該接口的onClick方法就是單擊事件回調方法

Android應用程序中任何窗口類都必須在AndroidManifest.xml文件中定義,否則無法使用。在定義MainActivity類時<activity>標簽的android:label屬性使用了字符串資源。用于定義Android應用程序相關信息的<application>標簽的andrdoid:label屬性值也使用了字符串資源

AndroidManifest.xml代碼如下

<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.neil.ad01"><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name" android:supportsRtl="true"android:theme="@style/AppTheme"><activity android:name=".MainActivity"android:label="@string/title_activity_main"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application></manifest>

其中還可以在string.xml中改變android:label的值,string.xml內容如下

<resources><string name="app_name">顯示日期時間</string><string name="title_activity_main">顯示日期時間</string></resources>

至此,代碼部分全部寫完。

然后點擊運行按鈕,在模擬器中生成app,如圖

AndroidStudio自帶的模擬器說要關閉windows系統中的Hyper-v虛擬機,還要HMAX intel加速器,裝Genymotion也運行不了,裝國內模擬器干脆AndroidStudio就識別不出來的,真是暈+_+,還好QT給力,以后還可以用QT基于C++開發android,VS現在也實現了VC++開發Android,現在各種平臺之間的交互真的是越來越給力了。期待更大的突破!!!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沈丘县| 新昌县| 顺义区| 德惠市| 韩城市| 曲松县| 福安市| 敦煌市| 镇江市| 丘北县| 元谋县| 历史| 启东市| 如东县| 隆尧县| 察雅县| 棋牌| 湘阴县| 汶上县| 清水河县| 那曲县| 林口县| 威海市| 三亚市| 白银市| 格尔木市| 虞城县| 青河县| 美姑县| 图木舒克市| 奉化市| 景谷| 湘西| 五台县| 安平县| 炎陵县| 额尔古纳市| 财经| 焦作市| 雷山县| 吉木萨尔县|