編輯:關於android開發
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity" >
<!-- 顯示block的數量的標簽控件 -->
<TextView
android:id="@+id/tv_TotalBlocks"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<!-- 顯示block的大小的標簽控件 -->
<TextView
android:id="@+id/tv_BlocSize"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<!-- 顯示可用block的標簽控件 -->
<TextView
android:id="@+id/tv_AvailaBlock"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<!-- 顯示空block的標簽控件 -->
<TextView
android:id="@+id/tv_FreeBlock"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<!-- 顯示SDCard的總大小的標簽控件 -->
<TextView
android:id="@+id/tv_SDTotalSize"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<!-- 顯示SDCard的剩余大小的標簽控件 -->
<TextView
android:id="@+id/tv_SDFreeSize"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
package com.example.yanlei.yl2;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
import java.io.File;
public class MainActivity extends AppCompatActivity {
private TextView mTvTotalBlocks; //SDCard上BLOCK總數
private TextView mTvBlocSize; //SDCard上每個block的SIZE
private TextView mTvAvailaBlock; //可供程序使用的Block的數量
private TextView mTvFreeBlock; //剩下的所有Block的數量(包括預留的一般程序無法使用的塊)
private TextView mTvSDTotalSize; //SDCard 總容量大小MB
private TextView mTvSDFreeSize; //SDCard 剩余大小MB
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 得到布局中的控件
findView();
// 綁定控件事件
SDCardSizeTest();
}
private void findView() {
// 綁定控件
mTvTotalBlocks = (TextView)findViewById(R.id.tv_TotalBlocks);
mTvBlocSize = (TextView)findViewById(R.id.tv_BlocSize);
mTvAvailaBlock = (TextView)findViewById(R.id.tv_AvailaBlock);
mTvFreeBlock = (TextView)findViewById(R.id.tv_FreeBlock);
mTvSDTotalSize = (TextView)findViewById(R.id.tv_SDTotalSize);
mTvSDFreeSize = (TextView)findViewById(R.id.tv_SDFreeSize);
}
public void SDCardSizeTest() {
// 取得SDCard當前的狀態
String sDcString = android.os.Environment.getExternalStorageState();
//如果當前系統有sdcard存在
if (sDcString.equals(android.os.Environment.MEDIA_MOUNTED)) {
// 取得sdcard文件路徑
File pathFile = android.os.Environment
.getExternalStorageDirectory();
//得到sdcard的狀態
android.os.StatFs statfs = new android.os.StatFs(pathFile.getPath());
// 獲取SDCard上BLOCK總數
long nTotalBlocks = statfs.getBlockCount();
mTvTotalBlocks.setText("SDCard上BLOCK總數: "+nTotalBlocks);
// 獲取SDCard上每個block的SIZE
long nBlocSize = statfs.getBlockSize();
mTvBlocSize.setText("SDCard上每個bloc的SIZE:"+nBlocSize);
// 獲取可供程序使用的Block的數量
long nAvailaBlock = statfs.getAvailableBlocks();
mTvAvailaBlock.setText("可供程序使用的Block的數量 : " + nAvailaBlock);
// 獲取剩下的所有Block的數量(包括預留的一般程序無法使用的塊)
long nFreeBlock = statfs.getFreeBlocks();
mTvFreeBlock.setText("剩下的所有Block的數量: " + nFreeBlock);
// 計算SDCard 總容量大小MB
long nSDTotalSize = nTotalBlocks * nBlocSize / 1024 / 1024;
mTvSDTotalSize.setText("SDCard 總容量大小MB: " + nSDTotalSize +"MB");
// 計算 SDCard 剩余大小MB
long nSDFreeSize = nAvailaBlock * nBlocSize / 1024 / 1024;
mTvSDFreeSize.setText(" SDCard 剩余大小MB: " + nSDFreeSize +"MB");
}
}
}
android eclipse關聯源碼,以及源碼(代碼)以及jar查看軟件,androideclipse
android eclipse關聯源碼,以及源碼(代碼)以及jar查看軟件,androideclipse1、eclipse關聯源碼 步驟一:自已百度下載相應版本的源碼,我
Android代碼故事第一回,平均間隔的按鈕,android第一回
Android代碼故事第一回,平均間隔的按鈕,android第一回我們的APP新做了一個放操作按鈕的界面,老板要求簡潔美觀有內涵,按鈕要均勻分布,於是參考之前的實現,設計
類似桌面背景壁紙隨手指滑動--第三方開源--BackgroundViewPager,viewpager滑動開源
類似桌面背景壁紙隨手指滑動--第三方開源--BackgroundViewPager,viewpager滑動開源 Android BackgroundView
Android簽名機制之---簽名過程詳解
Android簽名機制之---簽名過程詳解 一、前言 又是過了好長時間,沒寫文章的雙手都有點難受了。今天是聖誕節,還是得上班。因為前幾天有一個之前的同事,在申請微信SDK
Android動畫效果生動有趣的通知NiftyNotification(Android Toast替代品),androidnotification
Android動畫效果生動有趣的通知NiftyNotification(