- 浏览: 630986 次
-
文章分类
最新评论
-
q781253433:
qin ~.求demo看看~
Android之Widget -
zhongyuanceshi:
博主,没看到你的例子的Demo,共享下
Android之Widget
Date 0808
Android 开发环境配置
开发工具 :eclipse 解压就能使用==> 需要jre
Java JDK6.0 ==> jdk、jre
android需要安装SDK ==> 从网上下载20,30M的包 , SDK 管理器==>
运行android可执行文件(Linux: tools/android; Windows:/)==> 安装SDK 2.2 ==> 配置一个AVD
安装 JDK ==> SDK ==> 配置环境变量PATH ==> 解压eclipse ==> 安装android开发插件ADT ==> 为android配置模拟器AVD
========================
安装过程中,需要执行一些可执行文件
执行 :
1)可视化==> 双击 ==> Run in Terminal(在终端中运行)
2)终端下
# cd 文件所在的目录
# ./可执行文件名字
执行时遇到不能执行问题,解决?
# cd 文件所在目录
# chmod a+x 文件
配置PATH :
JAVA 的 jdk/bin
SDK adb所在的目录
Linux :
编辑用户目录下的 .profile
#gedit ~/.profile
export PATH="路径1:路径2: ... :$PATH"
=====================================
xml 可扩展的标记语言,允许自定义标记
html 标记语言 ==> web编程
标记一般成对出现<string name="hello" > </string>
<Button />
标记允许嵌套,不允许交叉嵌套
<LinearLayout ...>
<Button />
<TextView />
<TableLayout ...>
</TableLayout>
</LinearLayout>
注释 :
1) *.java ==> // , /* ... */ , /** */
2) xml , html 文件注释 <!-- 注释内容 -->
布局文件每个控件需要定义的属性
android:id="@+id/名字"
android:layout_width=""
android:layout_height=""
width 和 height常用的属性值 为 fill_parent 或 wrap_content
java 文件中获取该组件 ( (控件类型)findViewById(R.id.XXX))
TextView
Button
EditText
猜数
==========================================================================
Date 0809
复习 :
1)配置android的开发环境
2)了解android项目下各个目录含义,存放内容
3)可以创建一个简单的android项目
TextView
Button
EditView
步骤 :
i、在Activity对应的布局xml文件 定义组件,设置属性
<LinearLayout></LinearLayout>
<Widget android:id="@+id/idName"
android:layout_width=""
android:layout_height="" />( </Widget> )
fill_parent、wrap_content
ii、java文件访问组件==>获取组件 onCreate()
View findViewById(R.id.XXX) ==> 强制类型转换
iii、对控件操作 ==> 添加监听器
Button ==> OnClickListener
今天内容 :
1. Activity 的生命周期
2. 控件常用属性,尺寸的设置和颜色设置
3. LinearLayout
问题一:Context???
问题二 : fill_parent 与 match_parent
1. Activity 的生命周期
构造函数 ==> onCreate() ==> onStart() ==> onResume()(活跃状态)
如果有其他Activity加入 ==> onPause()
如果Activity完全不可见 ==> onStop()
finish() , 退出 , 资源不足 ==> onDestroy()
2. 新建一个Activity,要素
1) class XXX extends Activity{}
2) 在 AndroidManifest.xml 中注册Activity
<activity name=".className"></activity>
<activity name=".className" android:theme="@android:style/Theme.Dialog"></activity>
3) 在layout为Activity定义一个布局xml文件
4) 在class中重写 onCreate()方法
3. 启动一个Activity
Intent intent = new Intent(getApplicationContext() , XXXActivity.class);
startActivity(intent);
4. 结束Activity
finish();
练习 :1 . 测试Activity的生命周期
2. 从一个Activity跳转到第二个Activity
3. 上方的两个问题???
5. 控件常用xml属性
尺寸 : px 像素
dip或者dp 设备独立像素
sp 放大像素 处理字体
颜色 : #RGB #000000--#FFFFFF
图片 : drawable @drawable/名字
名字不采用大写字母,不以数字开头
layout_width
layout_height
layout_text
layout_textColor
layout_background
layout_textSize
layout_padding
layout_margin
1)EditText
layout:lines
layout:maxLines
layout:password="boolean"
layout:numeric="" Integer , decimal , signed
android:phoneNumber="boolean"
2) 滚动条
ScrollView 提供垂直方向滚动条
layout:scrollbars="vertical"
HorizontalScrollView 提供水平方向滚动条 , 不能为ListView控件设置
3) ImageView
layout:src/setImageResource(int id)
layout:scaleType="" 属性值不能自定义
4) 布局嵌套
练习 :
1)测试ImageView的ScaleType不同属性值的含义
2)调整一下你的猜数游戏布局
3)测试在一个布局中分别设置两个Button,其中一个宽高全为100px,另一个宽高全为100dip,运行在不同分辨率的模拟器下,对照一下两个按钮的各自大小
======================================
0810
复习 :
EditText
ImageView
LinearLayout android:orientation="vertical or horizontal" 控件可以使用属性 layout_weight
今天内容 :
1.
TableLayout 属性 android:stretchColumns , 列从0数起
<TableRow>
控件可以使用属性 android:layout_column="int" 设定是第几列
FrameLayout 单帧布局
每个控件都放置在以左上角开始的位置,后面控件遮挡前面控件
2. 选项菜单的使用
1)选项菜单添加
onCreateOptionsMenu(Menu menu) {
menu.add();
menu.add().setIcon(); // android.R.drawable.ic_menu_xxx;
}
2)对于选项菜单项的处理
onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
}
3)和选项菜单相关的其他方法
onPrepareOptionsMenu(){}
onOptionsMenuClosed(){}
注 : android内置一部分资源,这些内置资源引用 android.R....
4)可以为控件注册选项菜单,在控件的监听器的方法中使用 openOptionsmenu();
3. 快捷菜单 ContextMenu
1) 重写onCreateContextMenu()
menu.setHeaderTitle()
menu.add()
registerForContextMenu(View v) ; 为v控件添加了快捷菜单
unregisterForContextMenu(View v) ;
2)控件注册监听器
setOnCreateContextMenuListener()
4. java代码中添加控件
1)new View(Context)
2)addView(vObject , new XXX.LayoutParams(int w , int h));
练习 :
1. 两种方式实现ContextMenu ,
明天提交 :1)登录
2)Project :ContextMenu,OptionsMenu
3)Project:
MainActivity :LinearLayoutButton、TableLayout
Button、 FrameLayoutButton、RelativeLayoutButton、AbsoluteLayoutButton
单击不同的按钮显示不同的布局
在每个 布局对应Activity中添加注释,说明该布局的使用
================================================================
0811
RelativeLayout
AbsoluteLayout
RadioGroup、RadioButton、CheckBox
1. RelativeLayout 相对布局
第一个控件默认放置在左上角,后续控件放置时需要参照某个控件设置位置(Above、Bottom、Left、Right),还可以参照某个控件设置对齐方式(align)
从第二行开始控件的定位一般需要几个属性 :垂直方向的定位/水平方向+对齐
注意 : 控件要设置id
layout_above
layout_bottom
layout_left
layout_right
----------------
layout_alignBaseline
layout_alignTop
layout_alignBottom
layout_alignLeft
layout_alignRight
以上9个属性的值是某个参照控件的id "@id/viewId"
layout_alignParentTop
layout_alignParentBottom
layout_alignParentLeft
layout_alignParentRight
以上4个属性的值是 boolean
2. AbsoluteLayout
第一个控件默认放置在左上角 , 其他控件需要定位,layout_x , layout_y
3. TextView , EditText , Button , ImageView , ImageButton , ScrollView
1)单选按钮,若干个RadioButton为一组,放在一个RadioGroup中
i. <RadioGroup> 的属性 android:checkedButton="@+id/要默认选中的
RadioButton的id"
ii. 在RadioGroup中嵌套若干个RadioButton
iii. 为 RadioGroup添加 onCheckedChangeListener 监听器
在重写的onCheckedChange方法中,可以通过checkedId和RadioButton的id进行比较,来判断那个RadioButton被选中
2)复选框 CheckBox
android:checked="boolean" / isChecked()
CheckBox 可以添加 onClickListener 监听器
java文件中判断是否被选中 isChecked()
练习 :
1)RelativeLayout
2)RadioButton与CheckBox
============================================================================
0812
1. 常用Linux命令
1)cd ~ 用户主目录 / 根目录 ./ 当前目录 .. 上级目录
2)pwd
3)clear
4)ctrl+c 终止当前命令的执行
5)sudo chown -R 用户:组 目录 把目录的所有者和组重新授权
6)mv 移动
7)cp 拷贝
8)chmod
r -- 4 | w -- 2 | x -- 1
所有者 组 其他
如 chmod -R 755 /opt/demo
chomod a+x 文件
9)tar czvf 目录a 目录b 名字.tar.gz
10)tar xzvf 名字.tar.gz
2. java 常用的集合
List与Set : List可以重复,Set 不允许重复数据
ArrayList , LinkedList
Map : key <==> value
put(key , value)
Object get(key) ==> value
Set keySet()
Collection valueSet()
3. ListView
需要一个数据适配器 :ArrayAdapter、SimpleAdapter、SimpleCursorAdapter
需要一个数据源
ArrayAdapter ==> 数组或者动长数组
SimpleAdapter ==> List<? extends Map<String , ? >>
步骤 :
1)需要一个ListView控件
2)设置数据源
3)ListView的Item项的layout文件
内置布局文件 android.R.layout.simple_list_item1 一行一列
android.R.layout.simple_list_item2 两行一列
还有三个 android.R.layout.simple_list_XXX
自定义layout的xml文件
4)定义适配器Adapter
ArrayAdapter(Context context ,
int layoutResourceId ,
List|Array data)
SimpleAdapter(Context context,
List<? extends Map<String , ?>> data,
int layoutResourceId ,
String[] from, // map的key
int[] to // layout文件中显示value的控件id
)
5)ListView常用的监听器 onItemClickListener, onClickListener, onLongtimeClickListener
onItemClick(AdapterView<?> parent, View view,
int position, long id)
// 获取选中项item ==> 根据数据源的元素类型可以进行强制类型转换
? item = (?)parent.getAdapter().getItem(position);
// 如果移除选中项
数据源.remove(item);
(如果添加item,数据源.add())
// 不要忘记通知ListView
adapter.notifyDataSetChanged();
ListView :
1) class extends Activity
2) class extends ListActivity
ListActivity内置了List控件的一个Activity ,直接在onCreate() 方法中调用setListAdapter()
可以不定义layout的xml文件的
如果定义layout的xml文件 ,在xml文件
<ListView android:id="@id/android:list" ... ></ListView>
java文件不需要通过findViewById()找出ListView控件,如果非要找到 ListView list = (ListView) findViewById(android.R.id.list);
练习 :
ListView 的使用
extends Activity : 使用ArrayAdapter,数据源设置一些颜色String
添加监听器,更改背景颜色
extends Activity : 使用SimpleAdapter
item显示,左右,左显示图片,右上下两行分别显示title和info
添加监听器,实现选中项的删除
extends ListActivity
显示 ,上方ListView,Activity最下方添加一个Button
各位同学:
烽火3G实训基地的论坛已经开通!大家可以去上面注册,交流,各种学习,生活,技术问题都可以留言,回帖。可以把此论坛作为大家共同的家园!
http://www.fenghuo3g.com/bbs/forum.php
发表评论
-
Android之Fastboot、Recovery基础知识
2013-12-19 22:13 1108参考文章: http://blog.csdn.net/y9 ... -
Eclipse设置主题
2013-10-26 22:32 705下载自己喜欢的主题: http://eclipsec ... -
gitignore文件的配置
2013-09-24 15:29 1743gitignore文件在Android ... -
Eclipse安装Git插件
2013-09-24 14:20 825http://jiangli.easymorse.com/?p ... -
Eclipse像Xcode一样自动有提示
2013-09-05 17:04 12291. 打开Eclipse,然后打开“Preferences ... -
点九PNG技术
2013-04-16 13:26 898参考文章: http://blog.csdn.net/g ... -
Android ASE 脚本环境
2013-04-10 12:32 1199原文: http://blog.sina.com.cn/ ... -
android 按两次返回键退出
2012-12-25 20:01 1340package com.anjoyo.test; ... -
android混淆代码总结
2012-12-19 18:02 1528反编译工具下载地址:http://ishare.iask.si ... -
System.out.printf输出格式
2012-12-13 22:01 2552// 定义一些变量,用来格式化输出。 double ... -
Regex正则表达式的使用
2012-12-09 20:20 1845正则表达式是用来描述某些字符串规则的工具,可以用此规则来做 ... -
IOS&Android开发 使用特殊字体,使用自定义字体
2012-11-24 00:16 1575IOS开发: 原文链接:http://tieba.baidu ... -
AspectJ的安装和Eclipse的AJDT插件的配置
2012-11-19 15:21 4979安装AspectJ是为了正常使用软件MonkeyTalk 1 ... -
Mac配置android开发环境
2012-11-13 16:18 48一.Eclipse的下载 到网站:http ... -
RelativeLayout相关属性
2012-11-13 14:49 970android:layout_centerInP ... -
Android资源文件
2012-11-04 15:22 1004res [res中共有10种文 ... -
activity的启动方式(launch mode)
2012-11-04 15:14 878其他很详细的参考:http://blog.csdn.net/b ... -
android分享功能的实现(分享到微博空间等)
2012-11-03 22:15 2218//Intent intent = new Inten ... -
Android开发环境配置
2012-11-03 20:04 8921、JDK安装: http://jing ... -
android intent和intent action大全
2012-09-13 20:25 1068android 中intent是经常要用到的。不管是页面 ...
相关推荐
【牛津上海版7A Unit1笔记(注释)】主要涵盖了与旅行、家庭和北京相关的词汇和表达,以及一些时间表达方式。以下是对这些知识点的详细解释: 1. **亲戚在北京 (Relatives in Beijing)**:这个主题涉及到与家庭成员...
1. “狡兔三窟”:这个成语用来比喻人有多种应变的方法或准备。在历史人物中,与“狡兔三窟”相关的是冯谖与孟尝君。这个故事出自《战国策》,讲的是冯谖在孟尝君门下不受重视,提出要造“狡兔三窟”,即三个可以...
周幽王则是一个反面教材,他沉迷于美色,忽视国事,最终导致了烽火戏诸侯的悲剧,这一事件揭示了领导者贪图享乐而忽视国家安危的严重后果。这一故事警示我们,领导者应当以国家和人民的利益为重,不能因个人私欲而...
1. 中国古代盛世与衰败:书中提到了中国古代的三个盛世——文景之治、贞观之治和康乾盛世,这些都是中国封建社会经济发展、文化繁荣的代表。同时,书中也描绘了一些衰败的故事,如烽火戏诸侯、刘阿斗乐不思蜀、...
### 和计算机交朋友 #### 教学目标与内容概述 本教材旨在引导小学生初步了解信息技术的...通过上述内容的学习,学生不仅能够了解到信息技术的重要性,还能够对计算机有一个全面的认识,为进一步学习打下坚实的基础。
主流的OLT设备厂商包括华为、中兴、烽火、诺基亚、爱立信等,它们的产品广泛应用于全球各地的电信网络。 对于OLT的数据配置,主要包括以下几个关键步骤: 1. **设备初始化**:在安装OLT设备后,首先要进行硬件连接...
1. **信息和信息技术的基本概念** - 信息是指对人们有用的消息,它可以帮助人们理解和决策。在日常生活中,我们通过各种方式获取、处理和传递信息。 - 信息技术(Information Technology, IT)是处理、存储、获取...
教师将介绍从盘古开天地到新中国成立的各个重要历史时期和故事,而学生在了解之后,将讨论有效的阅读方法,如分类整理、做笔记、交流讨论等,这些都是提升阅读效率的重要手段。通过这一环节,学生不仅对书中的历史...