Android开发菜鸟级入门1--开发环境尝鲜&简易计算器
2015-10-09 22:37
399 查看
因为最近有移动端开发的任务要,作为从未做个安卓开发的小白我已经激动得不行了。
首先我在网上下载了最新的Android Studio地址:http://ask.android-studio.org/?/article/9 这个网站上都有
界面灰常赞,我切换到了全屏模式
虽然完全从文盲开始(甚至连java都没怎么学),但是以前也开发过MFC程序,想当然地感觉有几分相近
目前,我了解到的是
.xml的文件是用来做界面的
.java的才是程序
但是,当我调试的时候突然发现sdk搞不定,索性用自己手中的Android手机直接在线调试,也省得打开虚拟机了。
手机上要把USB Debug的权限打开,然后在AS(android studio)上菜单栏中的
Run->Edit Configuration中选上
USB...
接下来创建第一个安卓工程HelloAndroid
接下来编写第一行代码
首先想到开发安卓应用程序跟用mfc开发windows应用程序差不多吧,应该会有消息响应机制,首先我先来写个能报告
进程打开、关闭的程序吧!
在java文件栏目(左边)的MainActivity文件中,我加了如下几行
//有点像c语言中的include,导入一个库文件,这个文件可以帮助我们输出调试信息
在MainActivity这个方法中
我们在下面加入
点击run,程序自动下载到手机,然后自动启动!这时候小白我激动得不得已
查看下输出栏,发现了以下几个事实:
当我启动程序的时候
10-09 20:12:37.422 16853-16853/com.example.xyt.helloandroid I/MainActivity﹕ onCreate!
10-09 20:12:37.422 16853-16853/com.example.xyt.helloandroid I/MainActivity﹕ onStart!
10-09 20:12:37.422 16853-16853/com.example.xyt.helloandroid I/MainActivity﹕ onResume!
当我点击手机的退出,返回桌面时
10-09 20:14:30.542 17803-17803/com.example.xyt.helloandroid I/MainActivity﹕ onPause!
10-09 20:14:31.022 17803-17803/com.example.xyt.helloandroid I/MainActivity﹕ onStop!
然后又打开
10-09 20:14:59.882 17803-17803/com.example.xyt.helloandroid I/MainActivity﹕ onStart!
10-09 20:14:59.882 17803-17803/com.example.xyt.helloandroid I/MainActivity﹕ onResume!
杀进程
10-09 20:15:50.632 18405-18405/com.example.xyt.helloandroid I/MainActivity﹕ onDestroy!
好了现在对这几个东西的特征有点了解了
目前,我又发现Activity这个东西原来就是一个活动界面
好了,现在开始第一个开发,简单计算器,我只要做个加法计算器就行了
两个输入框,一个显示输出框,再加上一个按键
没错就 这么简单
简直跟mfc一模一样,拖控件!
我毫不犹豫地加了一个button上去
该死,竟然没有EditControl!!算了,自己码出来
突然发现这有点难度,百度
首先是activity_main.xml文件
这里使用的LinearLayout是一种列表性质的框架
下面分别搞了一个按钮两个编辑框一个文本
然后开始最重要的了
在java文件中引用库
然后下面贴了主要代码
这样,一个基本的计算器就搞定了
其实跟c++类似,CharSequence相当于字符串的数据结构
下面只要将编辑框中的转换成值计算再转化成string显示
对于按钮,要绑定监听器,具体用法看上面就行了
首先我在网上下载了最新的Android Studio地址:http://ask.android-studio.org/?/article/9 这个网站上都有
界面灰常赞,我切换到了全屏模式
虽然完全从文盲开始(甚至连java都没怎么学),但是以前也开发过MFC程序,想当然地感觉有几分相近
目前,我了解到的是
.xml的文件是用来做界面的
.java的才是程序
但是,当我调试的时候突然发现sdk搞不定,索性用自己手中的Android手机直接在线调试,也省得打开虚拟机了。
手机上要把USB Debug的权限打开,然后在AS(android studio)上菜单栏中的
Run->Edit Configuration中选上
USB...
接下来创建第一个安卓工程HelloAndroid
接下来编写第一行代码
首先想到开发安卓应用程序跟用mfc开发windows应用程序差不多吧,应该会有消息响应机制,首先我先来写个能报告
进程打开、关闭的程序吧!
在java文件栏目(左边)的MainActivity文件中,我加了如下几行
import android.util.Log;
//有点像c语言中的include,导入一个库文件,这个文件可以帮助我们输出调试信息
在MainActivity这个方法中
public class MainActivity extends Activity {
我们在下面加入
static final String Activity_ID="MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.i(Activity_ID,"onCreate!"); } protected void onDestroy(){ super.onDestroy(); Log.i(Activity_ID,"onDestroy!"); } protected void onPause(){ super.onPause(); Log.i(Activity_ID,"onPause!"); } protected void onResume(){ super.onResume(); Log.i(Activity_ID,"onResume!"); } protected void onStart(){ super.onStart(); Log.i(Activity_ID,"onStart!"); } protected void onStop(){ super.onStop(); Log.i(Activity_ID,"onStop!"); }
点击run,程序自动下载到手机,然后自动启动!这时候小白我激动得不得已
查看下输出栏,发现了以下几个事实:
当我启动程序的时候
10-09 20:12:37.422 16853-16853/com.example.xyt.helloandroid I/MainActivity﹕ onCreate!
10-09 20:12:37.422 16853-16853/com.example.xyt.helloandroid I/MainActivity﹕ onStart!
10-09 20:12:37.422 16853-16853/com.example.xyt.helloandroid I/MainActivity﹕ onResume!
当我点击手机的退出,返回桌面时
10-09 20:14:30.542 17803-17803/com.example.xyt.helloandroid I/MainActivity﹕ onPause!
10-09 20:14:31.022 17803-17803/com.example.xyt.helloandroid I/MainActivity﹕ onStop!
然后又打开
10-09 20:14:59.882 17803-17803/com.example.xyt.helloandroid I/MainActivity﹕ onStart!
10-09 20:14:59.882 17803-17803/com.example.xyt.helloandroid I/MainActivity﹕ onResume!
杀进程
10-09 20:15:50.632 18405-18405/com.example.xyt.helloandroid I/MainActivity﹕ onDestroy!
好了现在对这几个东西的特征有点了解了
目前,我又发现Activity这个东西原来就是一个活动界面
好了,现在开始第一个开发,简单计算器,我只要做个加法计算器就行了
两个输入框,一个显示输出框,再加上一个按键
没错就 这么简单
简直跟mfc一模一样,拖控件!
我毫不犹豫地加了一个button上去
该死,竟然没有EditControl!!算了,自己码出来
突然发现这有点难度,百度
首先是activity_main.xml文件
<LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:weightSum="1"> <TextView android:text="@string/hello_world" android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/textView" /> <EditText android:text="" android:id="@+id/edit1" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <EditText android:text="" android:id="@+id/edit2" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="New Button" android:id="@+id/button" /> </LinearLayout>
这里使用的LinearLayout是一种列表性质的框架
下面分别搞了一个按钮两个编辑框一个文本
然后开始最重要的了
在java文件中引用库
import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.TextView;
然后下面贴了主要代码
public class MainActivity extends Activity { static final String Activity_ID="MainActivity"; OnClickListener listener=null; EditText edit1; EditText edit2; TextView out; Button add; double num1=0,num2=0,result=0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.i(Activity_ID, "onCreate!"); setTitle("AddProgram"); out=(TextView)findViewById(R.id.textView); add=(Button)findViewById(R.id.button); edit1=(EditText)findViewById(R.id.edit1); edit2=(EditText)findViewById(R.id.edit2); listener=new OnClickListener() { @Override public void onClick(View v) { CharSequence str1=edit1.getText(); CharSequence str2=edit2.getText(); String ms1=str1.toString(); String ms2=str2.toString(); num1=Double.parseDouble(ms1); num2=Double.parseDouble(ms2); result=num1+num2; String tmp=String.valueOf(result); out.setText(tmp); } }; add.setOnClickListener(listener); }
这样,一个基本的计算器就搞定了
其实跟c++类似,CharSequence相当于字符串的数据结构
下面只要将编辑框中的转换成值计算再转化成string显示
对于按钮,要绑定监听器,具体用法看上面就行了
相关文章推荐
- 深入理解Android的startservice和bindservice
- Android中进程的创建和关闭
- Android基础入门教程——8.1.2 Android中的13种Drawable小结 Part 2
- Android5.1图库Gallery2代码分析数据加载流程
- 简单谈谈硬编码和软编码
- 关于ViewDragHelper
- 使用android中的AIDL让Service与Activity通信(service回调activity)
- [Android Pro] How to get recent tasks on Android “L”?
- Android-SlidingMenu-显示隐藏侧边栏
- Android ListView/GridView的item中 CheckBox状态错乱
- 进程与线程的一个简单解释
- Android Context 上下文 你必须知道的一切
- Android tips
- Android笔记---ComponentName的用法
- Android自定义捕获异常
- 看一手的有字幕的Google Android开发视频
- Android读书笔记-------View事件体系(2)滑动及弹性滑动
- Android Studio基本设置
- Android 数据传递方式
- Android数据库简单操作之创建数据库