当前位置: 编程技术>移动开发
本页文章导读:
▪Opengl归结 Opengl归纳
1.雾// fog opengles
gl.glFogfv(GL10.GL_FOG_COLOR, fogColorBfr);
gl.glFogf(GL10.GL_FOG_DENSITY, 0.35f);
gl.glHint(GL10.GL_FOG_HINT, GL10.GL_DONT_CARE);
g.........
▪ Dialog跟AlertDialog Dialog和AlertDialog
1.直接构造Dialog实例,此对话框显示的是当前的电池状态final Dialog d = new Dialog(GetBetteryActivity.this);d.setTitle("系统消息");d.setContentView(R.layout.getbattery_dialog);//设置Dialog的视图//.........
▪ 通电话,发送信息 打电话,发送信息
1.根据EditText输入电话号码,然后直接拨打 String strInput = mEditText.getText().toString(); Intent myIntentDial = new Intent("android.intent.action.CALL",Uri.parse("tel:"+strInput)); startActivity(myIntent.........
[1]Opengl归结
来源: 互联网 发布时间: 2014-02-18
Opengl归纳
1.雾
2.混合 Blend
3.纹理
1.雾
// fog opengles gl.glFogfv(GL10.GL_FOG_COLOR, fogColorBfr); gl.glFogf(GL10.GL_FOG_DENSITY, 0.35f); gl.glHint(GL10.GL_FOG_HINT, GL10.GL_DONT_CARE); gl.glFogf(GL10.GL_FOG_START, 2.0f); gl.glFogf(GL10.GL_FOG_END, 6.0f); gl.glEnable(GL10.GL_FOG);
glClearColor(0.5f,0.5f,0.5f,1.0f); // 设置背景的颜色为雾气的颜色 glFogi(GL_FOG_MODE, fogMode[fogfilter]); // 设置雾气的模式 glFogfv(GL_FOG_COLOR, fogColor); // 设置雾的颜色 glFogf(GL_FOG_DENSITY, 0.35f); // 设置雾的密度 glHint(GL_FOG_HINT, GL_DONT_CARE); // 设置系统如何计算雾气 glFogf(GL_FOG_START, 1.0f); // 雾气的开始位置 glFogf(GL_FOG_END, 5.0f); // 雾气的结束位置 glEnable(GL_FOG); // 使用雾气
2.混合 Blend
gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE); gl.glEnable(GL10.GL_BLEND);
3.纹理
// create textures gl.glEnable(GL10.GL_TEXTURE_2D); texturesBuffer = IntBuffer.allocate(3); gl.glGenTextures(3, texturesBuffer); // load bitmap Bitmap texture = Utils.getTextureFromBitmapResource(context, R.drawable.glass); // setup texture 0 gl.glBindTexture(GL10.GL_TEXTURE_2D, texturesBuffer.get(0)); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_NEAREST); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_CLAMP_TO_EDGE); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_CLAMP_TO_EDGE); GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, texture, 0); // setup texture 1 gl.glBindTexture(GL10.GL_TEXTURE_2D, texturesBuffer.get(1)); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_LINEAR); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_CLAMP_TO_EDGE); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_CLAMP_TO_EDGE); GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, texture, 0); // setup texture 2 gl.glBindTexture(GL10.GL_TEXTURE_2D, texturesBuffer.get(2)); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_LINEAR_MIPMAP_NEAREST); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_CLAMP_TO_EDGE); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_CLAMP_TO_EDGE); Utils.generateMipmapsForBoundTexture(texture); // free bitmap texture.recycle();
[2] Dialog跟AlertDialog
来源: 互联网 发布时间: 2014-02-18
Dialog和AlertDialog
1.直接构造Dialog实例,此对话框显示的是当前的电池状态
final Dialog d = new Dialog(GetBetteryActivity.this);
d.setTitle("系统消息");
d.setContentView(R.layout.getbattery_dialog);//设置Dialog的视图
//这两句话是呈现背景模糊的效果
Window window = d.getWindow();
window.setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
//取得Dialog中的组件textView,做一些显示
TextView myTextView =
(TextView) d.findViewById (R.id.myTextView_battery);
myTextView.setText("电池电量"+intLevel*100/intScale+"%");
//Dialog视图里有一个Button,取得这个Button,点击的时候注销接收广播
Button myButton = (Button) d.findViewById(R.id.myButton_battery);
myButton.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
unregisterReceiver(mBatInfoReceiver);
d.dismiss();
}});
d.show();//最后显示这个对话框。
2.利用AlertDialog.Builder构造对话框
final String[] str = {"Monday","Tuesday"};
new AlertDialog.Builder(ActivityMain.this)
.setTitle("选择日期")
.setItems(str,new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which) {
new AlertDialog.Builder(ActivityMain.this)
.setMessage("您选择的是:"+str[which]) .setPositiveButton("确认",
new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog,
int which) { }
})
.setNeutralButton("取消",
new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog,
int which) { }
})
.show();//显示点击第一个对话框之后产生的第二个对话框
}
})
.show();//显示第一个对话框
1.直接构造Dialog实例,此对话框显示的是当前的电池状态
final Dialog d = new Dialog(GetBetteryActivity.this);
d.setTitle("系统消息");
d.setContentView(R.layout.getbattery_dialog);//设置Dialog的视图
//这两句话是呈现背景模糊的效果
Window window = d.getWindow();
window.setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
//取得Dialog中的组件textView,做一些显示
TextView myTextView =
(TextView) d.findViewById (R.id.myTextView_battery);
myTextView.setText("电池电量"+intLevel*100/intScale+"%");
//Dialog视图里有一个Button,取得这个Button,点击的时候注销接收广播
Button myButton = (Button) d.findViewById(R.id.myButton_battery);
myButton.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
unregisterReceiver(mBatInfoReceiver);
d.dismiss();
}});
d.show();//最后显示这个对话框。
2.利用AlertDialog.Builder构造对话框
final String[] str = {"Monday","Tuesday"};
new AlertDialog.Builder(ActivityMain.this)
.setTitle("选择日期")
.setItems(str,new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which) {
new AlertDialog.Builder(ActivityMain.this)
.setMessage("您选择的是:"+str[which]) .setPositiveButton("确认",
new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog,
int which) { }
})
.setNeutralButton("取消",
new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog,
int which) { }
})
.show();//显示点击第一个对话框之后产生的第二个对话框
}
})
.show();//显示第一个对话框
[3] 通电话,发送信息
来源: 互联网 发布时间: 2014-02-18
打电话,发送信息
1.根据EditText输入电话号码,然后直接拨打
String strInput = mEditText.getText().toString();
Intent myIntentDial =
new Intent("android.intent.action.CALL",Uri.parse("tel:"+strInput));
startActivity(myIntentDial);
通过上面的设置就可以实现拨打电话的功能,一般情况下我们要对用户输入的strInput是否满足电话格式进行判断,常用判断方法是对EditText加一个参数android:phoneNumber=true的设置,如果满足,则拨打电话,如果不满足,则用一个toast告诉用户输入不规则,并令EditText为空。
判断是否为合格电话号码的方法为 传入得到的strInput,得到返回的Boolean值:
private Boolean isPhoneNumberValid(String phoneNumber){
boolean isValid = false;
String expression1 = "^\\(?(\\d{3})\\)?[-]?(\\d{4})[-]?(\\d{4)$"
String expressino2 = "^\\(?(\\d{3})\\)?[-]?(\\d{3))[-]?(\\d{5)$"
//满足上述两种表达式的会标准的电话号码
Pattern pattern1 = Pattern.compile(expression1);
Matcher matcher1 = pattern1.matcher(phoneNumber);
Pattern pattern2 = Pattern.compile(expression2);
Matcher matcher2 = pattern2.matcher(phoneNumber);
if(matcher1.matches()||matcher2.matches()){
isValid = true;
}
return isValid;
}
还要加上拨打电话的peimission,
<uses-permissino android:name="android.permission.CALL_PHONE"/>
发短信
SmsManager smsManager = SmsManager.getDefault();
PendingIntent mPi = PendingIntent.getBroadcast(context,null,
new Intent(),null);
smsManager.sendTextMessage(strAddress,null,strMessage,mPi,null);
发送短信是通过SmsManager对象的sendTextMEssage()方法来完成,其中需要传递五个参数,依次为收件人地址,发送地址,正文,发送服务,送达服务,其中收件人地址和正文是不可为null的两个值
上述用到的PendingIntent具有下列特性:当接收到PendingIntent对象时,会进行broadcast的动作,就如同使用Context.sendBroadcast()方法一样,这也就是在SmsManager.sendTextMessage()方法中需要传入PendingIntent作为传送服务的参数之一的原因
SmsManager还有其他两种传送短信的方法,参照SmsManager的源码进行学习
最后是加上permission
<uses-permission android:name="android.permission.SEND_SMS"/>
1.根据EditText输入电话号码,然后直接拨打
String strInput = mEditText.getText().toString();
Intent myIntentDial =
new Intent("android.intent.action.CALL",Uri.parse("tel:"+strInput));
startActivity(myIntentDial);
通过上面的设置就可以实现拨打电话的功能,一般情况下我们要对用户输入的strInput是否满足电话格式进行判断,常用判断方法是对EditText加一个参数android:phoneNumber=true的设置,如果满足,则拨打电话,如果不满足,则用一个toast告诉用户输入不规则,并令EditText为空。
判断是否为合格电话号码的方法为 传入得到的strInput,得到返回的Boolean值:
private Boolean isPhoneNumberValid(String phoneNumber){
boolean isValid = false;
String expression1 = "^\\(?(\\d{3})\\)?[-]?(\\d{4})[-]?(\\d{4)$"
String expressino2 = "^\\(?(\\d{3})\\)?[-]?(\\d{3))[-]?(\\d{5)$"
//满足上述两种表达式的会标准的电话号码
Pattern pattern1 = Pattern.compile(expression1);
Matcher matcher1 = pattern1.matcher(phoneNumber);
Pattern pattern2 = Pattern.compile(expression2);
Matcher matcher2 = pattern2.matcher(phoneNumber);
if(matcher1.matches()||matcher2.matches()){
isValid = true;
}
return isValid;
}
还要加上拨打电话的peimission,
<uses-permissino android:name="android.permission.CALL_PHONE"/>
发短信
SmsManager smsManager = SmsManager.getDefault();
PendingIntent mPi = PendingIntent.getBroadcast(context,null,
new Intent(),null);
smsManager.sendTextMessage(strAddress,null,strMessage,mPi,null);
发送短信是通过SmsManager对象的sendTextMEssage()方法来完成,其中需要传递五个参数,依次为收件人地址,发送地址,正文,发送服务,送达服务,其中收件人地址和正文是不可为null的两个值
上述用到的PendingIntent具有下列特性:当接收到PendingIntent对象时,会进行broadcast的动作,就如同使用Context.sendBroadcast()方法一样,这也就是在SmsManager.sendTextMessage()方法中需要传入PendingIntent作为传送服务的参数之一的原因
SmsManager还有其他两种传送短信的方法,参照SmsManager的源码进行学习
最后是加上permission
<uses-permission android:name="android.permission.SEND_SMS"/>
最新技术文章: