整理一波干货,都是比较实用的工具
工具类来自fastLib。工具类低耦合,可以直接把整个类拉去用
1.检查是否正规手机号
boolean isPhoneNumber=Utils.isPhoneNumber(phoneNumber)
2.MD5加密
String md5Str=Utils.getMd5(str,false); //第二个参数指定是16位还是32位,这里我选择32位
3.字符串中某些字符变色.其中的张三两字会变成绿色
Utils.getTextSomeOtherColor(4,6,"我评论了张三的评论:"+comment, Color.GREEN);4.格式化显示日期
5.显示网络状态TimeUtil.dateToString(new Date()) //默认的 yyyy-MM-dd hh:mm:ssTimeUtil.dateToString(new Date(),"hh:mm:ss") //指定格式显示,比如不显示日期仅显示具体时间
NetUtils.isConnected(context); //网络状态是否正常 NetUtils.isWifi(context); //是否连接上Wi-Fi
6.Dialog列表
FastDialog.showListDialog(new String[]{"item1","item2","item3"}).show(getSupportFragmentManager(), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { //do something } });7.Dialog文本
FastDialog.showMessageDialog("一段普通文本",true).show(getSupportFragmentManager(), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which){ //do something } });8.获取屏幕宽高
int width= ScreenUtils.getScreenWidth(); //获取屏幕宽 int height=ScreenUtils.getScreenHeight(); //获取屏幕高9.显示应用基本信息
CharSequence appName= getApplicationInfo().nonLocalizedLabel; //应用名 String appVersionName=AppInformation.getVersionName(this); //应用版本名 int appCode=AppInformation.getVersionCode(this); //应用版本号
10.信息输出封装
N.showShort(this,"一段简单的信息"); //等价于Toast.makeText(this,"一段简单的信息",Toast.LENGTH_SHORT).show(); N.showSnackbarShort(v,"一段简单的信息"); //等价于Snackbar.make(v,"一段简单的信息",Snackbar.LENGTH_SHORT).show(); N.showNotify(this,1,R.mipmap.ic_launcher,"title","message"); //显示信息到通知栏上一个小例子
public class MainActivity extends FastActivity{ @Bind(R.id.message) TextView mMessage; @Bind(R.id.phone) EditText mPhone; @Bind(R.id.md5Before) EditText mMd5Before; @Bind(R.id.comment) EditText mComment; @Override protected void onCreate(@Nullable Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Bind(R.id.bt1) public void showToast(View v){ N.showShort(this,"一段简单的信息"); //等价于Toast.makeText(this,"一段简单的信息",Toast.LENGTH_SHORT).show(); } @Bind(R.id.bt2) public void checkPhone(View v){ String phoneCheck=Utils.isPhoneNumber(mPhone.getText().toString())?"这是正规的手机号码":"这是不正规的手机号码"; mMessage.setText(phoneCheck); } @Bind(R.id.bt3) public void md5(View v){ String md5Str=Utils.getMd5(mMd5Before.getText().toString(),false); //第二个参数指定是16位还是32位,这里我选择32位 mMessage.setText(md5Str); } @Bind(R.id.bt4) public void someTextChangeColor(View v){ String comment=mComment.getText().toString(); if(TextUtils.isEmpty(comment)){ N.showShort(this,"评论不能为空"); return; } mMessage.setText(Utils.getTextSomeOtherColor(4,6,"我评论了张三的评论:"+comment, Color.GREEN)); } @Bind(R.id.bt5) public void showDate(View v){ mMessage.setText(TimeUtil.dateToString(new Date())); } @Bind(R.id.bt6) public void showNetStatus(View v){ String netStatus=NetUtils.isConnected(this)?"网络正常":"网络异常"; String wifiStatus=NetUtils.isWifi(this)?"已连上wifi":"wifi未连接上"; mMessage.setText(netStatus+"\n"+wifiStatus); } @Bind(R.id.bt7) public void showListDialog(View v){ FastDialog.showListDialog(new String[]{"item1","item2","item3"}).show(getSupportFragmentManager(), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { N.showShort(MainActivity.this,"点击了第"+which+"选项"); } }); } @Bind(R.id.bt8) public void showTextDialog(View v){ FastDialog.showMessageDialog("一段普通文本",true).show(getSupportFragmentManager(), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which){ N.showShort(MainActivity.this,"点击了确定"); } }); } @Bind(R.id.bt9) public void showScreenWidthAndHeight(View v){ int width= ScreenUtils.getScreenWidth(); int height=ScreenUtils.getScreenHeight(); mMessage.setText("宽:"+width+" 高:"+height); } @Bind(R.id.bt10) public void showAppInformation(View v){ CharSequence appName= getApplicationInfo().nonLocalizedLabel; String appVersionName=AppInformation.getVersionName(this); int appCode=AppInformation.getVersionCode(this); mMessage.setText("app名:"+appName+" 版本名:"+appVersionName+" 版本号:"+appCode); } }效果图