当前位置: 编程技术>移动开发
本页文章导读:
▪第三章:取得联系人文件 第三章:取得联系人资料
效果:main.xml
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
android:id="@+id/widget0"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android..........
▪ FileFilter 选择性的回到目录文件 FileFilter 选择性的返回目录文件
FileFilter filter1 = new FileFilter() {public boolean accept (File file) {if (file.isFile() && file.getAbsolutePath().toLowerCase().endsWith(".pdf")) {return true;}return false;}};File[] files = file.l.........
▪ Android 非一般用法-来自中国移动开发社区 Android 特殊用法--来自中国移动开发社区
1.让一个图片透明:
复制到剪贴板
Java代码
Bitmap buffer = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_4444);buffer.eraseColor(Color.TRANSPARENT);
2..........
[1]第三章:取得联系人文件
来源: 互联网 发布时间: 2014-02-18
第三章:取得联系人资料
效果:
main.xml
AndroidManifest.xml
使用Content Provider
查询所有通讯录数据:
content://contacts/people
查询通讯录的特定联系人ID:10
content://contacts/people/10
修改Content provider里的数据
ContentResolver.update();
添加一项数据进入 Content Provider
ContentResolvert.insert();
将数据存储至Content Provider:
ContentResolver().openOutputStream();
自Provider以删除一笔数据:
ContentResolver.delete();
效果:
main.xml
<?xml version="1.0" encoding="utf-8"?> <AbsoluteLayout android:id="@+id/widget0" android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android" > <EditText android:id="@+id/name" android:layout_width="92px" android:layout_height="wrap_content" android:textSize="18sp" android:layout_x="24px" android:layout_y="35px" > </EditText> <EditText android:id="@+id/number" android:layout_width="268px" android:layout_height="wrap_content" android:textSize="18sp" android:layout_x="23px" android:layout_y="87px" > </EditText> <Button android:id="@+id/sreach" android:layout_width="57px" android:layout_height="wrap_content" android:text="搜索" android:layout_x="26px" android:layout_y="142px" > </Button> <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="21px" android:layout_y="202px" > </TextView> </AbsoluteLayout>
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="provider.test" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".ProviderTest" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission> </manifest>
package provider.test; import android.app.Activity; import android.content.Intent; import android.database.Cursor; import android.net.Uri; import android.os.Bundle; import android.provider.ContactsContract; import android.provider.ContactsContract.PhoneLookup; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class ProviderTest extends Activity { private EditText name; private EditText number; private Button search; private TextView text; private static final int PICK_CONTACT_SUNACTIVITY=2; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); /** 载入Main.xml*/ setContentView(R.layout.main); /** 通过id找到组件*/ name=(EditText)findViewById(R.id.name); number=(EditText)findViewById(R.id.number); text=(TextView)findViewById(R.id.text); search=(Button)findViewById(R.id.sreach); /** 设置button按钮点击事件*/ search.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v){ /** 构建uri来取的联系人数据位置*/ Uri uri=Uri.parse("content://contacts/people"); /** 通过intent来取的联系人数据返回的所选的值*/ Intent intent=new Intent(Intent.ACTION_PICK,uri); /** 打开新的Activity并期望Activity返回值*/ startActivityForResult(intent, PICK_CONTACT_SUNACTIVITY); } }); } protected void onActivityResult(int requestCode,int resultCode,Intent data){ switch(requestCode){ case PICK_CONTACT_SUNACTIVITY: Cursor c=null; Cursor phone =null; /** 获得uri对象*/ final Uri uriRet=data.getData(); if(uriRet!=null){ try { /** 必须要有android.permission.READ_CONTACTS权限*/ c=managedQuery(uriRet, null, null, null, null); /**将Currsor一道数据最前端*/ c.moveToFirst(); /**获得联系人名字*/ String strname=c.getString(c.getColumnIndexOrThrow(PhoneLookup.DISPLAY_NAME)); /**(如果你使用的是2.0或2.0以上的API那么获得联系人号码) * * 获取联系人的ID号,在SQLite中的数据库ID * */ String contactId = c.getString(c.getColumnIndex(ContactsContract.Contacts._ID)); phone = managedQuery(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId, null, null); String strPhoneNumber=null; phone.moveToFirst(); /**获得联系人号码*/ strPhoneNumber = phone.getString(phone.getColumnIndex (ContactsContract.CommonDataKinds.Phone.NUMBER)); /**设置两个EditText参数*/ name.setText(strname); number.setText(strPhoneNumber); } catch (Exception e) { /**将错误信息显示出来*/ text.setText(e.toString()); e.printStackTrace(); }finally{ /**关闭对象*/ phone.close(); c.close(); } } break; } super.onActivityResult(requestCode, resultCode, data); } }
使用Content Provider
查询所有通讯录数据:
content://contacts/people
查询通讯录的特定联系人ID:10
content://contacts/people/10
修改Content provider里的数据
ContentResolver.update();
添加一项数据进入 Content Provider
ContentResolvert.insert();
将数据存储至Content Provider:
ContentResolver().openOutputStream();
自Provider以删除一笔数据:
ContentResolver.delete();
[2] FileFilter 选择性的回到目录文件
来源: 互联网 发布时间: 2014-02-18
FileFilter 选择性的返回目录文件
FileFilter filter1 = new FileFilter() {
public boolean accept (File file) {
if (file.isFile() && file.getAbsolutePath().toLowerCase().endsWith(".pdf")) {
return true;
}
return false;
}
};
File[] files = file.listFiles(filter1);
只返回当前目录下的pdf文件!
[3] Android 非一般用法-来自中国移动开发社区
来源: 互联网 发布时间: 2014-02-18
Android 特殊用法--来自中国移动开发社区
Bitmap buffer = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_4444);buffer.eraseColor(Color.TRANSPARENT);
Intent intent =
new
Intent(Intent.ACTION_SENDTO, Uri .fromParts(
"mailto"
,
"test@test.com"
,
null
));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness =
100
/
100
.0f;
getWindow().setAttributes(lp);
Filter filter = myAdapter.getFilter();
filter.filter(mySearchText);
setOnScrollListener(
new
OnScrollListener(){
public
void
onScroll(AbsListView view,
int
firstVisibleItem,
int
visibleItemCount,
int
totalItemCount) {
// TODO Auto-generated method stub }
public
void
onScrollStateChanged(AbsListView view,
int
scrollState) {
// TODO Auto-generated method stub
if
(scrollState ==
0
) Log.i(
"a"
,
"scrolling stopped..."
); } });}
Bitmap bmp = getImageBitmap(jpg);
String path = getFilesDir().getAbsolutePath() +
"/test.png"
;
File file =
new
File(path);
FileOutputStream fos =
new
FileOutputStream(file);
bmp.compress( CompressFormat.PNG, 100, fos );
fos.close();
Intent intent =
new
Intent();
intent.setAction(android .content.Intent.ACTION_VIEW);
intent.setDataAndType(Uri .fromFile(
new
File(path)),
"image/png"
);
startActivity(intent);
对于图片上边的不适用索引格式会出错。
Intent intent =
new
Intent();
intent.setAction(android .content.Intent.ACTION_VIEW);
File file =
new
File(
"/sdcard/test.mp4"
);
intent.setDataAndType(Uri .fromFile(file),
"video/*"
);
startActivity(intent);
Intent intent =
new
Intent();
intent.setAction(android .content.Intent.ACTION_VIEW);
File file =
new
File(
"/sdcard/test.mp3"
);
intent.setDataAndType(Uri .fromFile(file),
"audio/*"
);
startActivity(intent);
setTextAppearance(context, android .R.style.TextAppearance_Medium);
android :textAppearance=
"?android :attr/textAppearanceMedium"
<activity
android :name=
".ArtistActivity"
android :label=
"Artist"
android :launchMode=
"singleTop"
>
</activity>
Intent i =
new
Intent();
i.putExtra(EXTRA_KEY_ARTIST, id);
i.setClass(
this
, ArtistActivity.
class
);
i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(i);
Bitmap myCoolBitmap = ... ;
int
w = myCoolBitmap.getWidth(), h = myCoolBitmap.getHeight();
Bitmap rounder = Bitmap.createBitmap(w,h,Bitmap.Config.ARGB_8888);
Canvas canvas =
new
Canvas(rounder);
Paint xferPaint =
new
Paint(Paint.ANTI_ALIAS_FLAG);
xferPaint.setColor(Color.RED);
canvas.drawRoundRect(
new
RectF(
0
,
0
,w,h),
20
.0f,
20
.0f, xferPaint);
xferPaint.setXfermode(
new
PorterDuffXfermode(PorterDuff.Mode.DST_IN));
//然后呢实现
canvas.drawBitmap(myCoolBitmap,
0
,
0
,
null
);
canvas.drawBitmap(rounder,
0
,
0
, xferPaint);
Notification notification =
new
Notification (icon, tickerText, when);
notification .number =
4
;
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<shape xmlns:android =
"http://schemas.android .com/apk/res/android "
android :shape=
"rectangle"
>
<gradient android :startColor=
"#FFFFFFFF"
android :endColor=
"#FFFF0000"
android :angle=
"270"
/>
</shape>
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<resources>
<style name=
"NewTheme"
parent=
"android :Theme"
>
<item name=
"android :background"
>
@drawable
/shape</item>
</style>
</resources>
<activity android :name=
".ShapeDemo"
android :theme=
"@style/NewTheme"
>
public
class
MyApplication
extends
Application{
private
String thing =
null
;
public
String getThing(){
return
thing;
}
public
void
setThing( String thing ){
this
.thing = thing; }
}
public
class
MyActivity
extends
Activity {
private
MyApplication app;
public
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
app = ((MyApplication)getApplication());
String thing = app.getThing();
}
}
1.让一个图片透明:
复制到剪贴板
Java代码
2.直接发送邮件:
复制到剪贴板
Java代码
3.程序控制屏幕变亮:
复制到剪贴板
Java代码
4.过滤特定文本
复制到剪贴板
Java代码
5.scrollView scroll停止事件
复制到剪贴板
Java代码
6. 对于特定的程序 发起一个关联供打开
复制到剪贴板
C/C++代码
7.设置文本外观
复制到剪贴板
Java代码
8.设置单独的发起模式:
复制到剪贴板
Java代码
9.创建一个圆角图片
这个的主要原理其实就是利用遮罩,先创建一个圆角方框 然后将图片放在下面:
复制到剪贴板
Java代码
复制到剪贴板
Java代码
10.在notification 上的icon上加上数字 给人提示有多少个未读
复制到剪贴板
Java代码
11背景渐变:
首先建立文件drawable/shape.xml
复制到剪贴板
Java代码
在该文件中设置渐变的开始颜色(startColor)、结束颜色(endColor)和角度(angle)
接着创建一个主题values/style.xml
复制到剪贴板
Java代码
然后在AndroidManifest.xml文件中的application或activity中引入该主题,如:
复制到剪贴板
Java代码
该方法同样适用于控件 http://17f8.cn/trackback.php?tbID=259&extra=9d45e9
12. 储存数据 当你在一个实例中保存静态数据,此示例关闭后 下一个实例想引用 静态数据就会为null,这里呢必须重写applition
复制到剪贴板
Java代码
最新技术文章: