我们先用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"> <Button android: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" /> <Button android: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; } //初始化窗口 @Override protected 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区分单击了哪个按钮 @Override public 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"> <application android: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,现在各种平台之间的交互真的是越来越给力了。期待更大的突破!!!
现在我希望在运行方法时显示按钮。但是按钮已经放在屏幕上了。 我怎么做?
本文向大家介绍Android实现系统级悬浮按钮,包括了Android实现系统级悬浮按钮的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Android系统级悬浮按钮的具体代码,供大家参考,具体内容如下 具体的需求 1、就是做一个系统级的悬浮按钮,就像iPhone 桌面的那个悬浮按钮效果一样,能随意拖动,并且手一放开,悬浮按钮就自动靠边。 2、可以点击并且可以随意拖动。 3、悬浮按钮自动
本文向大家介绍Android实现倒计时的按钮的示例代码,包括了Android实现倒计时的按钮的示例代码的使用技巧和注意事项,需要的朋友参考一下 最近有人问我如何实现倒计时的按钮功能,例如发送验证码,我记得有个CountDownTimer,因为好久没用过了,自己就写了一个,代码如下 点击按钮后开始倒计时,貌似很简单啊,但是运行起来发现有一些问题,先给大家看效果图 我们打印一下时间 这里我们可以看到8
我正在创建一个应用程序,当按下按钮时,它会在“for循环”中生成一些啁啾声,我想在循环过程中阻止按钮,并在循环结束时重新播放。 我尝试了此操作,但应用程序崩溃: 我在日志中发现了以下错误: 06-19 11:15:00.852:E/AndroidRuntime(29419):致命异常:Thread-5516 06-19 11:15:00.852:E/AndroidRuntime(29419):an
我在微型MCE配置中添加了缩进和向外缩进按钮,如下所示: tinyMCE.init({ // 常规选项模式:“textareas”,主题:“高级”,editor_selector:cl2,皮肤:“o2k7”,插件:“advimage,advlink,spellchecker,inlinepopups,contextmenu,paste,noneditable,mergefields” , spel