Android攻城狮学习笔记—入门篇二
第七章 跑马灯
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.helloworld.MainActivity"
android:orientation="vertical" > <com.example.helloworld.MarqueeTest //2 注意这里,使用自定义
android:singleLine="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:ellipsize="marquee" //1 一般情况下 以上4行代码即可实现跑马灯 但是同一界面多个textview都需要跑马灯效果时 不可行 此时需要第2种方法
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/text_name" /> <com.example.helloworld.MarqueeTest
android:singleLine="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:ellipsize="marquee"
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/text_name2" /> </LinearLayout> //2 新建一个类 自定义xml样式
public class MarqueeTest extends TextView {
public MarqueeTest(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
public MarqueeTest(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
// TODO Auto-generated constructor stub
}
public MarqueeTest(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}
//非常关键
@Override
public boolean isFocused() {
// TODO Auto-generated method stub
return true;
}
}
第八章 动态自动匹配
AutoCompleteTextView控件
layout中需要设置 android:completionThreshold="3" //输入多少个字符时出现自动匹配内容 其他的代码如下
public class MainActivity extends Activity { private AutoCompleteTextView acTextView; //1 初始化控件
private String[] res = {"beijing1","beijing2","shanghai1","shanghai2"}; // 3 初始化数据源 @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*
* 1 初始化控件
* 2 需要一个适配器
* 3 初始化数据源
* 4 将adapter与当前的AutoCompleteTextView绑定
* */ acTextView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1); // 1 初始化控件
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,res); //2 需要一个适配器 acTextView.setAdapter(adapter); //4 将adapter与当前的AutoCompleteTextView绑定
} }
MultiAutoCompleteTextView控件 效果如下
public class MainActivity extends Activity { private MultiAutoCompleteTextView macTextView; //1初始化控件
private String[] res = {"beijing1","beijing2","shanghai1","shanghai2"}; //3 初始化数据源 @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*
* 1 初始化控件
* 2 需要一个适配器
* 3 初始化数据源
* 4 将adapter与当前的MultiAutoCompleteTextView绑定
* 5 设置分隔符
* */ macTextView = (MultiAutoCompleteTextView)findViewById(R.id.multiAutoCompleteTextView1); //1 初始化控件
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,res); //2 需要一个适配器 macTextView.setAdapter(adapter); //将adapter与控件绑定 macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); //设置逗号最为分隔符
} }
第九章 ToggleButton
有两种状态:选中和未选中 可以为不同状态设置不同显示文本
layout设置
<ToggleButton
android:id="@+id/toggleButton1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textOn="开"
android:textOff="关"/> <ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/light_off"/>
MainActivity.java
public class MainActivity extends Activity implements OnCheckedChangeListener { //2 实现监听接口 private ToggleButton tb; // 1 初始化控件
private ImageView img; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_main); tb = (ToggleButton)findViewById(R.id.toggleButton1); //1 初始化控件
img = (ImageView)findViewById(R.id.imageView1); tb.setOnCheckedChangeListener(this); // 2 给togglebutton绑定监听事件 } @Override //3 重写监听方法
public void onCheckedChanged(CompoundButton arg0, boolean arg1) {
img.setBackgroundResource(arg1?R.drawable.light_on:R.drawable.light_off); } }
Android攻城狮学习笔记—入门篇二的更多相关文章
- Android攻城狮学习笔记—入门篇三
第十章 CheckBox 与其他控件类似 有自己的监听方法 实现监听 并定义被选中或取消后的操作 第十一章 RadioGroup和RadioButton RadioGroup是RadioButton的 ...
- Android攻城狮学习笔记—入门篇一
第一章 搭建Android开发环境 1.1 环境组成 JDK(Java Development Kit) Eclipse Android SDK(Software Development Kit) A ...
- Android攻城狮学习笔记-进阶篇一
点击快速抵达: 第1章 AndroidManifest配置文件 第2章 使用ListView显示信息列表 第3章 使用DatePicker及TimePicker显示当前日期和时间 第4章 使用Grid ...
- 前端攻城狮学习笔记九:让你彻底弄清offset
很多初学者对于JavaScript中的offset.scroll.client一直弄不明白,虽然网上到处都可以看一张图(图1),但这张图太多太杂,并且由于浏览器差异性,图示也不完全正确. 图一 不知道 ...
- PHP学习笔记 - 入门篇(5)
PHP学习笔记 - 入门篇(5) 语言结构语句 顺序结构 eg: <?php $shoesPrice = 49; //鞋子单价 $shoesNum = 1; //鞋子数量 $shoesMoney ...
- PHP学习笔记 - 入门篇(4)
PHP学习笔记 - 入门篇(4) 什么是运算符 PHP运算符一般分为算术运算符.赋值运算符.比较运算符.三元运算符.逻辑运算符.字符串连接运算符.错误控制运算符. PHP中的算术运算符 算术运算符主要 ...
- PHP学习笔记 - 入门篇(3)
PHP学习笔记 - 入门篇(3) 常量 什么是常量 什么是常量?常量可以理解为值不变的量(如圆周率):或者是常量值被定义后,在脚本的其他任何地方都不可以被改变.PHP中的常量分为自定义常量和系统常量 ...
- PHP学习笔记--入门篇
PHP学习笔记--入门篇 一.Echo语句 1.格式 echo是PHP中的输出语句,可以把字符串输出(字符串用双引号括起来) 如下代码 <?php echo "Hello world! ...
- PHP学习笔记 - 入门篇(2)
PHP入门篇(2) 什么是变量 变量是用于存储值的容器,如下 $var = @"6666" 如何定义变量 定义变量就是像服务器的内存申请空间,用来存储数据,eg: <?php ...
随机推荐
- react框架 Dva & Umi
概念 // http://localhost:3000/ //models import IndexPage from './routes/IndexPage'; import Products fr ...
- 新安装的Apache和php,测试可以解析phpinfo,但是无法打开drupal网站
没有去掉php.ini中mysql相关的一些扩展的注释
- <Android 应用 之路> MPAndroidChart~PieChart
简介 MPAndroidChart是PhilJay大神给Android开发者带来的福利.MPAndroidChart是一个功能强大并且使用灵活的图表开源库,支持Android和IOS两种,这里我们暂时 ...
- Google APAC----Africa 2010, Qualification Round(Problem C. T9 Spelling)----Perl 解法
原题地址链接:https://code.google.com/codejam/contest/351101/dashboard#s=p2 问题描述: Problem The Latin alphabe ...
- Python语言程序设计学习 之 了解Python
Python简介 Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. Python是纯粹的自由软件,源代 ...
- select 时进行update的操作,在高并发下引起死锁
场景:当用户查看帖子详情时,把帖子的阅读量:ReadCount+1 select title,content,readcount from post where id='xxxx' --根据主键查 ...
- 连接到 Azure 上的 SQL Server 虚拟机(经典部署)
概述 本主题介绍如何连接到运行于 Azure 虚拟机的 SQL Server 实例. 它介绍了一些常规连接方案,并提供了在 Azure VM 中配置 SQL Server 连接的详细步骤. Impor ...
- Halo 的缔造者们在忙什么?
如果你自认为是一名主机游戏玩家,就一定知道 Halo.自 2001 年首代作品问世至今,十多年的磨炼已使得『光环』成为世界顶级的 FPS 游戏之一.<光环4>的推出,更让系列走向一个重要的 ...
- JavaScript 使用HTML DOM的oninput事件,实时监听value值变化
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 通信与实际用例应用(消息队列和进程撰写的ATM机与消息队列的五子棋对站)
int semget(key_t key, int nsems, int semflg); 功能:创建信号量或获取信号量 nsems:信号量的数量 semflg: IPC_CREAT|IPC_EXEC ...