配色: 字号:
Android高效率编码-细节,控件,架包,功能,工具,开源汇总
2016-10-18 | 阅:  转:  |  分享 
  
Android高效率编码-细节,控件,架包,功能,工具,开源汇总

其实写博客的初衷也并不是说什么分享技术,毕竟咱还只是个小程序员,最大的目的就是对自我的知识积累,以后万一编码的时候断片了,也可以翻出来看看,这样子对自己也有好处,所以今天就汇总一下一些需要的东西。多图来了,加油!

一.游戏



小熊打字,我刚接触电脑练习打字的时候用到的



下载地址:http://download.csdn.net/detail/qq_26787115/9365721



二.色彩



这张颜色表上的颜色都太赞了



三.控件



1.TextView



//禁止换行

android:singleLine="true"



//字体滚动


android:layout_width="match_parent"

android:layout_height="wrap_content"

android:singleLine="true"

android:ellipsize="marquee"

android:marqueeRepeatLimit="marquee_forever"

android:focusable="true"

android:focusableInTouchMode="true"

/>



文本添加下划线



2.EditText



//只接收数字类型

android:numeric="integer"

//只接收电话类型

android:phoneNumber="true"

//密码效果

android:password="true"









































4.隐藏ActionBar



getActionBar().hide();



方法2



privatelongexitTime=0;

















直接上代码

注意添加各种权限



activity_main.xml






android:layout_width="match_parent"

android:layout_height="match_parent"

android:background="@android:color/white"

android:orientation="vertical">




android:id="@+id/tab1_rl"

android:layout_width="match_parent"

android:layout_height="51dp"

android:background="#34c083">




android:id="@+id/tab1_btn01"

android:layout_width="wrap_content"

android:layout_height="51dp"

android:layout_centerHorizontal="true"

android:background="@null"

android:gravity="center"

android:text="手机信息"

android:textColor="@android:color/white"

android:textSize="20dp"/>




android:id="@+id/btn_back"

android:layout_width="wrap_content"

android:layout_height="51dp"

android:layout_alignParentLeft="true"

android:background="@drawable/back"/>






android:layout_width="fill_parent"

android:layout_height="40dp"

android:background="@android:color/white"

android:gravity="center_vertical"

android:orientation="horizontal">




android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="20dp"

android:text="IP:"/>




android:id="@+id/tv1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="测试"/>






android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#aeaea9"/>




android:layout_width="fill_parent"

android:layout_height="40dp"

android:background="@android:color/white"

android:gravity="center_vertical"

android:orientation="horizontal">




android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="20dp"

android:text="MAC地址:"/>




android:id="@+id/tv2"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="测试"/>






android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#aeaea9"/>




android:layout_width="fill_parent"

android:layout_height="40dp"

android:background="@android:color/white"

android:gravity="center_vertical"

android:orientation="horizontal">




android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="20dp"

android:text="SD卡存储信息:"/>




android:id="@+id/tv3"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="测试"/>






android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#aeaea9"/>




android:layout_width="fill_parent"

android:layout_height="40dp"

android:background="@android:color/white"

android:gravity="center_vertical"

android:orientation="horizontal">




android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="20dp"

android:text="手机分辨率:"/>




android:id="@+id/tv4"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="测试"/>






android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#aeaea9"/>




android:layout_width="fill_parent"

android:layout_height="40dp"

android:background="@android:color/white"

android:gravity="center_vertical"

android:orientation="horizontal">




android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="20dp"

android:text="网络是否连接:"/>




android:id="@+id/tv5"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="测试"/>






android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#aeaea9"/>




android:layout_width="fill_parent"

android:layout_height="40dp"

android:background="@android:color/white"

android:gravity="center_vertical"

android:orientation="horizontal">




android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="20dp"

android:text="手机内存:"/>




android:id="@+id/tv6"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="测试"/>






android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#aeaea9"/>




android:layout_width="fill_parent"

android:layout_height="40dp"

android:background="@android:color/white"

android:gravity="center_vertical"

android:orientation="horizontal">




android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="20dp"

android:text="手机CPU:"/>




android:id="@+id/tv7"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="测试"/>






android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#aeaea9"/>




android:layout_width="fill_parent"

android:layout_height="40dp"

android:background="@android:color/white"

android:gravity="center_vertical"

android:orientation="horizontal">




android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="20dp"

android:text="手机IMEI:"/>




android:id="@+id/tv8"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="测试"/>






android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#aeaea9"/>





MainActivity.java



packagecom.lgl.circle;



importjava.io.BufferedReader;

importjava.io.File;

importjava.io.FileReader;

importjava.io.IOException;

importandroid.app.Activity;

importandroid.app.ActivityManager;

importandroid.app.ActivityManager.MemoryInfo;

importandroid.content.Context;

importandroid.net.ConnectivityManager;

importandroid.net.NetworkInfo;

importandroid.net.wifi.WifiInfo;

importandroid.net.wifi.WifiManager;

importandroid.os.Bundle;

importandroid.os.Environment;

importandroid.os.StatFs;

importandroid.telephony.TelephonyManager;

importandroid.text.format.Formatter;

importandroid.util.DisplayMetrics;

importandroid.util.Log;

importandroid.view.View;

importandroid.view.View.OnClickListener;

importandroid.widget.TextView;

importandroid.widget.Toast;

importcom.lgl.circle.R;



publicclassAboutPhoneextendsActivity{



privateTextViewtv1,tv2,tv3,tv4,tv5,tv6,tv7,tv8;

privateString[]cpuInfo={"",""};//1-cpu型号//2-cpu频率



@Override

protectedvoidonCreate(BundlesavedInstanceState){

//TODOAuto-genwww.sm136.comeratedmethodstub

super.onCreate(savedInstanceState);

setContentView(R.layout.about_phone);

initView();

}



privatevoidinitView(){

tv1=(TextView)findViewById(R.id.tv1);

tv1.setText(getLocalIpAddress2());

tv2=(TextView)findViewById(R.id.tv2);

tv2.setText(getLocalMacAddress());

tv3=(TextView)findViewById(R.id.tv3);

//需要判断手机上面SD卡是否插好,如果有SD卡的情况下,我们才可以访问得到并获取到它的相关信息,当然以下这个语句需要用if做判断

if(Environment.getExternalStorageState().equals(

Environment.MEDIA_MOUNTED)){

//取得sdcard文件路径

Filepath=Environment.getExternalStorageDirectory();

StatFsstatfs=newStatFs(path.getPath());

//获取block的SIZE

longblocSize=statfs.getBlockSize();

//获取BLOCK数量

longtotalBlocks=statfs.getBlockCount();

//空闲的Block的数量

longavailaBlock=statfs.getAvailableBlocks();

//计算总空间大小和空闲的空间大小

//存储空间大小跟空闲的存储空间大小就被计算出来了。

longavailableSize=blocSizeavailaBlock;

//(availableBlocksblockSize)/1024KIB单位

//(availableBlocksblockSize)/1024/1024MIB单位

longallSize=blocSizetotalBlocks;

tv3.setText("可用:"+availableSize/1024/1024/1024+"GB"

+"总共:"+allSize/1024/1024/1024+"GB");

}else{

tv3.setText("SD卡不可用");

}



tv4=(TextView)findViewById(R.id.tv4);

DisplayMetricsdisplayMetrics=newDisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);

tv4.setText("分辨率:"+displayMetrics.widthPixels+"x"

+displayMetrics.hewww.shanxiwang.netightPixels);



tv5=(TextView)findViewById(R.id.tv5);

ConnectivityManagerconnectivityManager=(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);

NetworkInfonetworkInfo=connectivityManager.getActiveNetworkInfo();

if(networkInfo==null||!networkInfo.isConnected()){

//info.setConnected(false);

tv5.setText("当前无网络");

}else{

//info.setConnected(true);

tv5.setText("当前网络正常");

}

tv6=(TextView)findViewById(R.id.tv6);

StringavailMemory=getAvailMemory();

StringtotalMemory=getTotalMemory();

tv6.setText("可用内存:"+availMemory+"\n"+"总内存:"+totalMemory);

tv7=(TextView)findViewById(R.id.tv7);

getCpuInfo();

tv7.setText("cpu型号:"+cpuInfo[0]+"\n"+"cpu频率:"+cpuInfo[1]);

tv8=(TextView)findViewById(R.id.tv8);

try{

TelephonyManagermTelephonyMgr=(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

Stringimei=mTelephonyMgr.getDeviceId();

tv8.setText(""+imei);



}catch(Exceptione){

//TODO:handleexception

}

findViewById(R.id.btn_back).setOnClickListener(newOnClickListener(){



@Override

publicvoidonClick(Viewv){

finish();

}

});

}



//获取手机ipmethod-2

publicStringgetLocalIpAddress2(){

//获取wifi服务

WifiManagerwifiManager=(WifiManager)getSystemService(Context.WIFI_SERVICE);

//判断wifi是否开启

if(!wifiManager.isWifiEnabled()){

wifiManager.setWifiEnabled(true);

}

WifiInfowifiInfo=wifiManager.getConnectionInfo();

intipAddress=wifiInfo.getIpAddress();

Stringip=intToIp(ipAddress);

returnip;

}



privateStringintToIp(inti){

return(i&0xFF)+"."+((i>>8)&0xFF)+"."+((i>>16)&0xFF)

+"."+(i>>24&0xFF);

}



/

mac地址start

/

publicStringgetLocalMacAddress(){

WifiManagerwifi=(WifiManager)getSystemService(Context.WIFI_SERVICE);

WifiInfoinfo=wifi.getConnectionInfo();



returninfo.getMacAddress();

}



//手机的内存信息主要在/proc/meminfo文件中,其中第一行是总内存,而剩余内存可通过ActivityManager.MemoryInfo得到。



privateStringgetAvailMemory(){//获取android当前可用内存大小

ActivityManageram=(ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);

MemoryInfomi=newMemoryInfo();

am.getMemoryInfo(mi);

//mi.availMem;当前系统的可用内存

returnFormatter.formatFileSize(getBaseContext(),mi.availMem);//将获取的内存大小规格化

}



privateStringgetTotalMemory(){

Stringstr1="/proc/meminfo";//系统内存信息文件

Stringstr2;

String[]arrayOfString;

longinitial_memory=0;

try{

FileReaderlocalFileReader=newFileReader(str1);

BufferedReaderlocalBufferedReader=newBufferedReader(

localFileReader,8192);

str2=localBufferedReader.readLine();//读取meminfo第一行,系统总内存大小



arrayOfString=str2.split("\\s+");

for(Stringnum:arrayOfString){

Log.i(str2,num+"\t");

}



initial_memory=Integer.valueOf(arrayOfString[1]).intValue()1024;//获得系统总内存,单位是KB,乘以1024转换为Byte

localBufferedReader.close();



}catch(IOExceptione){

}

returnFormatter.formatFileSize(getBaseContext(),initial_memory);//Byte转换为KB或者MB,内存大小规格化

}



/

CPU

/

privatevoidgetCpuInfo(){

Stringstr1="/proc/cpuinfo";

Stringstr2="";

String[]arrayOfString;

try{

FileReaderfr=newFileReader(str1);

BufferedReaderlocalBufferedReader=newBufferedReader(fr,8192);

str2=localBufferedReader.readLine();

arrayOfString=str2.split("\\s+");

for(inti=2;i
cpuInfo[0]=cpuInfo[0]+arrayOfString[i]+"";

}

str2=localBufferedReader.readLine();

arrayOfString=str2.split("\\s+");

cpuInfo[1]+=arrayOfString[2];

localBufferedReader.close();

}catch(IOExceptione){

}

}

}

六.架包



1.Xutils



强大的xutils就不多说了



2.Androidanimation



动画,注解



3.Volley



Google官方网络框架



七.工具



说到工具,其实辅助我们的工具还真不少,我以后慢慢的一个个添加

1.HJson



64位的

格式化json的PC端工具



2.Xmind



思维导图制作软件,如果你的思路不清晰,可以用它来慢慢梳理



3.MarkDown编辑器



这篇博文就是这个编辑器写出来的,真心很方便,大伙可以试试



献花(0)
+1
(本文系网络学习天...首藏)