- 浏览: 41562 次
- 性别:
- 来自: 济南
文章分类
最新评论
1、获取资源: Resources res = getBaseContext().getResources();
Drawable draw=res.getDrawable(R.drawable.icon);
2、获得数组: String[] ary = getResources().getStringArray(R.array.ary);
3、自动提示框:
String[] arrays=new String[]{"a","ab","abc","bc","bcde","ee"};
actalert=(AutoCompleteTextView)findViewById(R.id.actalert);
ArrayAdapter<String> adapter=new ArrayAdapter<String>(
this,
android.R.layout.simple_dropdown_item_1line,
arrays);
actalert.setAdapter(adapter);
mactalert=(MultiAutoCompleteTextView)findViewById(R.id.mactvalert);
mactalert.setAdapter(adapter);
// 设置多个值之间的分隔符,此处为逗号
mactalert.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
4、spinner设置数据源
spncolor.setPrompt("请选择");
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.attr, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spncolor.setAdapter(adapter);
5、显示当前时间:
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
// 将当前时间显示在TextView组件中
tvTime.setText("当前时间:" + sdf.format(new Date()));
6、代码添加布局文件
AbsListView.LayoutParams lp = new AbsListView.LayoutParams(
ViewGroup.LayoutParams.FILL_PARENT, 64);
TextView text = new TextView(activity);
text.setLayoutParams(lp);
text.setTextSize(20);
text.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
text.setPadding(36, 0, 0, 0);
text.setText(s);
7、自定义窗口标题栏代码
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);//自定义标题栏
setContentView(R.layout.main);
//为标题栏设置一个xml布局
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_custom);
custom_title.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView android:id="@+id/tvtitle"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentLeft="true"></TextView>
<LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_toRightOf="@+id/tvtile" android:orientation="horizontal"
android:layout_alignParentRight="true" android:gravity="center">
<Button android:text="@string/answer" android:id="@+id/btnanswer"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:background="@color/btn_inter" android:layout_marginRight="8dp"
android:gravity="center" android:paddingTop="2dp"></Button>
<Button android:text="@string/submit" android:id="@+id/btnsubmit"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:background="@color/btn_inter" android:layout_marginRight="8dp"
android:gravity="center" android:paddingTop="2dp"></Button>
</LinearLayout>
</RelativeLayout>
8、Activity仿Dialog Theme(加图标和标题其实就是Activity的icon和titile)(1)、自定义样式
<style name="Theme.CustomDialog" parent="android:style/Theme.Dialog">
<item name="android:windowBackground">@drawable/filled_box</item>
</style>
@drawable/filled_box:资源文件中新建drawable文件夹,新建filled_box样式xml
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#f0600000"/>
<stroke android:width="3dp" color="#ffff8080"/>
<corners android:radius="3dp" />
<padding android:left="10dp" android:top="10dp"
android:right="10dp" android:bottom="10dp" />
</shape>
(2)Manifest.xml中配置Acitivity样式
<activity android:name=".Main"
android:label="@string/app_name"
android:theme="@android:style/Theme.Dialog">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
(3)为Activity设置图标
//设定窗口模式(仿Dialog中的icon,带有一个左图标)
requestWindowFeature(Window.FEATURE_LEFT_ICON);
setContentView(R.layout.main);
//设置图片资源
getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON
, R.drawable.icon);
9、从一个Activity1到另一个Activity2,当在第二个Activity2按返回键不出现Activity1的做法是在打开Activity2的同时关闭Activity1
Intent intent = new Intent(Main.this, fowardwidget.class);
startActivity(intent);
finish();
10、允许TextView的文本值拼接
(1)允许在TextView的文本值后添加buffer text
tv.setText(tv.getText(),TextView.BufferType.EDITABLE);
(2)使用Editable对象添加buffer text
Editable text=(Editable)tv.getText();
text.append("editable");
text.append("\n"):
11、如果历史栈中包含Activity,打开此Activity从栈中放到栈顶层而不是从新打开Activity
Intent intent = new Intent(ReorderFour.this, ReorderTwo.class);
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);
12、避免输入法面板遮挡,在manifest.xml中activity中设置android:windowSoftInputMode
android:windowSoftInputMode="stateVisible|adjustResize"
13、获取当前手机壁纸和设置手机壁纸(wallpaper)(1)获取当前壁纸
WallpaperManager wm=WallpaperManager.getInstance(this);
Drawable wallpaper=wpm.getDrawable();
(2)设置当前壁纸,同时要添加壁纸设置权限
imapaper.setDrawingCacheEnabled(true);
Drawable drawale=this.getResources().getDrawable(R.drawable.bg);
imapaper.setImageDrawable(drawale);
wpm.setBitmap(imapaper.getDrawingCache());
<uses-permission android:name="android.permission.SET_WALLPAPER"></uses-permission>
14、常见通过系统服务得到的实例化对象
NotificationManager nm=(NotificationManager)getSystemService(NOTIFICATION_SERVICE);
15、检查网络是否连接
//检查网络是否连接
public boolean checkIntent(){
ConnectivityManager mannager=(ConnectivityManager)
this.getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo info=mannager.getActiveNetworkInfo();
if(info==null || !info.isConnected()){
return false;
}
if(info.isRoaming()){
return true;
}
return true;
}
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
16、从资源文件中(asset)读取文本文档
//获得输入流
InputStream in=getAssets().open("read_asset.txt");
int size=in.available();
//将输入流读到字节数组中(内存)
byte[] buffer=new byte[size];
in.read(buffer);
in.close();
String text=new String(buffer);
17、TextView、Button等设置文本滚动(跑马灯效果),控件必须获得焦点才能有滚动效果,并且文字长度大于控件长度
android:singleLine="true"
android:ellipsize="marquee"
android:focusable="true"
android:marqueeRepeatLimit="marquee_forever"
//marquee_forever:一直滚动下去,n(整数):滚动n次
18、TextView文本添加下划线
TextView textView = (TextView)findViewById(R.id.testView);
textView.setText(Html.fromHtml("<u>"+"hahaha"+"</u>"));
19、TextView添加图片
String src=""+R.drawable.qq;
Html.ImageGetter imageGetter =new ImageGetter() {
Drawable draw=null;
@Override
public Drawable getDrawable(String source) {
// TODO Auto-generated method stub
int id=Integer.parseInt(source.trim());
draw=getResources().getDrawable(id);
draw.setBounds(0, 0, draw.getIntrinsicWidth(), draw.getIntrinsicHeight());
return draw;
}
};
tvquestion.append(Html.fromHtml("<img src="+src+"", imageGetter, null));
20、秒转成00:00:00
int hour=time/60/60%60;
int minute = time/60%60;
int second = time%60;
String strhour=hour<10 ? "0" + hour : "" + hour;
String strminutes=minute<10 ? "0" + minute : "" + minute;
String strseconds=second < 10 ? "0" + second : "" + second;
tvtimer.setText(strhour+":"+strminutes+":"+strseconds);
21、TextView添加滚动条
<ScrollView android:id="@+id/sv_e8_question"
android:layout_width="fill_parent" android:layout_height="180dp"
android:scrollbarStyle="outsideOverlay">
<TextView android:text="@string/question" android:id="@+id/tv_e8_question"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:paddingTop="5dp" android:paddingLeft="5dp"></TextView>
</ScrollView>
22、Activity自动销毁时调用onSaveInstanceState()方法保存配置信息:可多Activity共享
@Override
public void onSaveInstanceState(Bundle outState){
SharedPreferences.Editor editor=getSharedPreferences("sp_timer", 0).edit();
editor.putInt(arg0, arg1);
super.onSaveInstanceState(outState);
}
单个Activity保存
@Override
public void onSaveInstanceState(Bundle outState){
SharedPreferences.Editor editor=this.getPreferences(0).edit();
editor.putInt(arg0, arg1);
super.onSaveInstanceState(outState);
}
Drawable draw=res.getDrawable(R.drawable.icon);
2、获得数组: String[] ary = getResources().getStringArray(R.array.ary);
3、自动提示框:
String[] arrays=new String[]{"a","ab","abc","bc","bcde","ee"};
actalert=(AutoCompleteTextView)findViewById(R.id.actalert);
ArrayAdapter<String> adapter=new ArrayAdapter<String>(
this,
android.R.layout.simple_dropdown_item_1line,
arrays);
actalert.setAdapter(adapter);
mactalert=(MultiAutoCompleteTextView)findViewById(R.id.mactvalert);
mactalert.setAdapter(adapter);
// 设置多个值之间的分隔符,此处为逗号
mactalert.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
4、spinner设置数据源
spncolor.setPrompt("请选择");
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.attr, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spncolor.setAdapter(adapter);
5、显示当前时间:
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
// 将当前时间显示在TextView组件中
tvTime.setText("当前时间:" + sdf.format(new Date()));
6、代码添加布局文件
AbsListView.LayoutParams lp = new AbsListView.LayoutParams(
ViewGroup.LayoutParams.FILL_PARENT, 64);
TextView text = new TextView(activity);
text.setLayoutParams(lp);
text.setTextSize(20);
text.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
text.setPadding(36, 0, 0, 0);
text.setText(s);
7、自定义窗口标题栏代码
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);//自定义标题栏
setContentView(R.layout.main);
//为标题栏设置一个xml布局
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_custom);
custom_title.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView android:id="@+id/tvtitle"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentLeft="true"></TextView>
<LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_toRightOf="@+id/tvtile" android:orientation="horizontal"
android:layout_alignParentRight="true" android:gravity="center">
<Button android:text="@string/answer" android:id="@+id/btnanswer"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:background="@color/btn_inter" android:layout_marginRight="8dp"
android:gravity="center" android:paddingTop="2dp"></Button>
<Button android:text="@string/submit" android:id="@+id/btnsubmit"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:background="@color/btn_inter" android:layout_marginRight="8dp"
android:gravity="center" android:paddingTop="2dp"></Button>
</LinearLayout>
</RelativeLayout>
8、Activity仿Dialog Theme(加图标和标题其实就是Activity的icon和titile)(1)、自定义样式
<style name="Theme.CustomDialog" parent="android:style/Theme.Dialog">
<item name="android:windowBackground">@drawable/filled_box</item>
</style>
@drawable/filled_box:资源文件中新建drawable文件夹,新建filled_box样式xml
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#f0600000"/>
<stroke android:width="3dp" color="#ffff8080"/>
<corners android:radius="3dp" />
<padding android:left="10dp" android:top="10dp"
android:right="10dp" android:bottom="10dp" />
</shape>
(2)Manifest.xml中配置Acitivity样式
<activity android:name=".Main"
android:label="@string/app_name"
android:theme="@android:style/Theme.Dialog">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
(3)为Activity设置图标
//设定窗口模式(仿Dialog中的icon,带有一个左图标)
requestWindowFeature(Window.FEATURE_LEFT_ICON);
setContentView(R.layout.main);
//设置图片资源
getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON
, R.drawable.icon);
9、从一个Activity1到另一个Activity2,当在第二个Activity2按返回键不出现Activity1的做法是在打开Activity2的同时关闭Activity1
Intent intent = new Intent(Main.this, fowardwidget.class);
startActivity(intent);
finish();
10、允许TextView的文本值拼接
(1)允许在TextView的文本值后添加buffer text
tv.setText(tv.getText(),TextView.BufferType.EDITABLE);
(2)使用Editable对象添加buffer text
Editable text=(Editable)tv.getText();
text.append("editable");
text.append("\n"):
11、如果历史栈中包含Activity,打开此Activity从栈中放到栈顶层而不是从新打开Activity
Intent intent = new Intent(ReorderFour.this, ReorderTwo.class);
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);
12、避免输入法面板遮挡,在manifest.xml中activity中设置android:windowSoftInputMode
android:windowSoftInputMode="stateVisible|adjustResize"
13、获取当前手机壁纸和设置手机壁纸(wallpaper)(1)获取当前壁纸
WallpaperManager wm=WallpaperManager.getInstance(this);
Drawable wallpaper=wpm.getDrawable();
(2)设置当前壁纸,同时要添加壁纸设置权限
imapaper.setDrawingCacheEnabled(true);
Drawable drawale=this.getResources().getDrawable(R.drawable.bg);
imapaper.setImageDrawable(drawale);
wpm.setBitmap(imapaper.getDrawingCache());
<uses-permission android:name="android.permission.SET_WALLPAPER"></uses-permission>
14、常见通过系统服务得到的实例化对象
NotificationManager nm=(NotificationManager)getSystemService(NOTIFICATION_SERVICE);
15、检查网络是否连接
//检查网络是否连接
public boolean checkIntent(){
ConnectivityManager mannager=(ConnectivityManager)
this.getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo info=mannager.getActiveNetworkInfo();
if(info==null || !info.isConnected()){
return false;
}
if(info.isRoaming()){
return true;
}
return true;
}
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
16、从资源文件中(asset)读取文本文档
//获得输入流
InputStream in=getAssets().open("read_asset.txt");
int size=in.available();
//将输入流读到字节数组中(内存)
byte[] buffer=new byte[size];
in.read(buffer);
in.close();
String text=new String(buffer);
17、TextView、Button等设置文本滚动(跑马灯效果),控件必须获得焦点才能有滚动效果,并且文字长度大于控件长度
android:singleLine="true"
android:ellipsize="marquee"
android:focusable="true"
android:marqueeRepeatLimit="marquee_forever"
//marquee_forever:一直滚动下去,n(整数):滚动n次
18、TextView文本添加下划线
TextView textView = (TextView)findViewById(R.id.testView);
textView.setText(Html.fromHtml("<u>"+"hahaha"+"</u>"));
19、TextView添加图片
String src=""+R.drawable.qq;
Html.ImageGetter imageGetter =new ImageGetter() {
Drawable draw=null;
@Override
public Drawable getDrawable(String source) {
// TODO Auto-generated method stub
int id=Integer.parseInt(source.trim());
draw=getResources().getDrawable(id);
draw.setBounds(0, 0, draw.getIntrinsicWidth(), draw.getIntrinsicHeight());
return draw;
}
};
tvquestion.append(Html.fromHtml("<img src="+src+"", imageGetter, null));
20、秒转成00:00:00
int hour=time/60/60%60;
int minute = time/60%60;
int second = time%60;
String strhour=hour<10 ? "0" + hour : "" + hour;
String strminutes=minute<10 ? "0" + minute : "" + minute;
String strseconds=second < 10 ? "0" + second : "" + second;
tvtimer.setText(strhour+":"+strminutes+":"+strseconds);
21、TextView添加滚动条
<ScrollView android:id="@+id/sv_e8_question"
android:layout_width="fill_parent" android:layout_height="180dp"
android:scrollbarStyle="outsideOverlay">
<TextView android:text="@string/question" android:id="@+id/tv_e8_question"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:paddingTop="5dp" android:paddingLeft="5dp"></TextView>
</ScrollView>
22、Activity自动销毁时调用onSaveInstanceState()方法保存配置信息:可多Activity共享
@Override
public void onSaveInstanceState(Bundle outState){
SharedPreferences.Editor editor=getSharedPreferences("sp_timer", 0).edit();
editor.putInt(arg0, arg1);
super.onSaveInstanceState(outState);
}
单个Activity保存
@Override
public void onSaveInstanceState(Bundle outState){
SharedPreferences.Editor editor=this.getPreferences(0).edit();
editor.putInt(arg0, arg1);
super.onSaveInstanceState(outState);
}
发表评论
-
[Android分享] Preferencescreen关于intent跳转activity问题。
2012-10-15 10:16 0这几天在做setting,遇到配置好intent后点击没有反应 ... -
TabHost技巧
2012-10-15 10:16 01.如何要在tabhost 中显示activity ,那么里面 ... -
后台的Activity被系统回收怎么办:onSaveInstanceState
2012-10-15 10:15 0你后台的Activity被系统回收怎么办:onSaveInst ... -
ctwap-cmwap-uiwap网络连接
2012-10-15 10:15 0if (localNetworkInfo != n ... -
显示、隐藏软键盘
2012-10-15 10:14 0一、 // Hide soft keyboard, if vi ... -
动态更新Menu状态的方法
2012-10-15 10:13 0@Override public boolean onCre ... -
android 获取 imei号码
2012-10-15 10:13 0android 获取 imei号码 Imei = ((Tel ... -
Tools之Traceview使用
2012-10-15 10:12 0一.产生Trace文件 import android.os.D ... -
textview 滚动代码
2012-10-15 10:12 0android:singleLine="true&q ... -
android jni调用心得
2012-10-16 12:24 1073jni 的调用分几种方式: 1。静态调用 2。动态调用 动 ... -
android 获取xml控件的长度
2012-10-16 12:24 935LayoutParams tvPara = (LayoutPa ... -
android编译
2012-10-15 10:10 0境:ubuntu10.04 1.安装java 下载jdk-1_ ... -
一些比较实用的方法
2012-10-15 10:09 0//获取系统时间格式的方法 boolean b24 = Dat ... -
android Task 与 Activity的关系
2012-10-15 10:09 0android:noHistory 用于标记当用户从A ... -
android滑动之Scrolle
2012-10-15 10:08 0正文 一、结构 public class Scroller e ... -
启动其它应用包的方法
2012-10-15 10:06 0Intent mainIntent = new Intent( ... -
Android开发中的drawable-(hdpi,mdpi,ldpi)和WVGA,HVGA,QVGA的区别以及联系
2012-10-16 12:24 6471.drawable-(hdpi,mdpi,ldpi)的区别 ... -
Android如何将程序打成jar包
2012-10-15 10:04 0导出 1. 创建java project 2. 工程属性jav ... -
android Activity背景风格
2012-10-16 12:23 551Android Theme主题样式开发注意点 Androi ... -
ANR处理方法
2012-10-15 10:00 0ANRs (“Application Not Respondi ...
相关推荐
[x] 支持H264硬解码显示(Android 4.1以上版本支持) [ ] 支持H264软解码显示 > - [ ] 支持ACC音频 使用方法 使用Jcenter仓库 > compile "com.aaronhan:rtspclient:0.7" 调用RtspClient方法 private ...
SpannableString,列出大多数常用的方法和实例供参考。
实验目的 1、掌握Android应用结构组成 2、了解控制UI界面的三种方式 3、掌握XML界面控制的设计方法 4、掌握常用界面组件TextView、EditText、Button 2. 实验步骤 1. 掌握Android应用结构组成(导入工程phone) 2. ...
Android开发常用整理(不断扩充中)包含各种工具类、线程池、日志、自定义的控件、程序崩溃捕捉处理、默认的Application配置、常用的Adapter等 注意: > 如果需要使用FragmentTabAdapter,则需要android-support-v4....
支持异步回调,方法参数支持js所有已知的类型,包括数字,字符串,布尔值,对象,函数。同时还针对WebView的一些常用的方法进行了一定的封装,像返回,刷新,网页中图片保存,是否用系统浏览器进行打开
囊括了一大部分Android应用开发过程当中常用的工具类。工具类来源整理自网络和自己编写。 所有的工具类简介 (a - z): 类 介绍 AnimationUtils Animation 工具类 AppUtils APP 相关信息工具类 ...
Android常用的方法 Gradle compile 'com.zzb.library:android-common:版本号'//版本号看上面download那个徽章 ChangeLog 150814 //Decode bitmap的工具类,避免OOM //动画工具类 150729 获取屏幕宽度高度,dp、px...
前言Lock接口是Java 5引入的,最常见的实现类是ReentrantLock,可以起到锁的作用.使用上和功能上和synchronized有较大不同,Lock
Android-Activity之间数据传递的多种方式. 在不同模块(如Activity)间经常会有各种各样的数据需要相互传递,我把常用的几种 方法都收集到了一起。它们各有利弊,有各自己的应用场景。
git 常用命令及下载android方法 git 常用命令及下载android方法
加密工具类,这里收集了一些常用的加密方法,包括AES,DES,3DES,MD5,RSA,SHA1,SHA256,SHA384,SHA512。
该项目尽可能的便于开发人员,快捷、快速开发安全可靠的项目,以及内置部分常用的资源文件,如color.xml、(toast) layout.xml等
安卓常用组件 ListViewLoad 说明:这是一个可以显示上拉加载更多的ListView. 实现方法: 创建要上拉后要显示的底部 编写自定义的view类继承ListView AndroidAnnotation 说明:安卓开发懒人框架(官网文档) ...
原程序,只实现了RollingFileAppender ,文件可以按指定大小 定量产生,但是常用的记录日志方法是 按天生产一个日志文件,所以就从官网上下了源码,简单的修改下,增加了对DailyRollingFileAppender 的支持,可以...
----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...
Android Studio 常用快捷键 Android Studio 常用快捷键Android Studio 常用快捷键Android Studio 常用快捷键
android常用基本功能实现方法 0 android 创建按钮 Button button = new Button(this); 1 android 创建输入框 EditText editText = new EditText(this); 2 android 创建文本 TextView textView = new TextView...
RxBus 支持多事件定义,支持数据携带,支持全局和局部的事件订阅和注销 订阅池管理 线程调度辅助工具 RxBinding 使用工具类 RxJava常用方法工具类
Android中ImageView的常用方法一览.pdf 学习资料 复习资料 教学资源