標籤:create file 獲得 size 菜鳥 moni login png rri
1.首先設定QQ顯示介面
介面上兩個EditText兩個TextView,一個選擇框和一個按鈕
2.設計步驟
①首頁面設計
1 <TextView 2 android:layout_width="fill_parent" 3 android:layout_height="wrap_content" 4 android:text="請輸入QQ號碼!" 5 /> 6 <EditText 7 android:layout_width="0dp" 8 android:layout_height="wrap_content" 9 />10 <TextView11 android:layout_width="fill_parent"12 android:layout_height="wrap_content"13 android:text="請輸入QQ密碼!"14 />15 <EditText16 android:layout_width="0dp"17 android:layout_height="wrap_content"18 />19 <CheckBox20 android:layout_width="wrap_content"21 android:layout_height="wrap_content"22 android:text="是否儲存密碼"23 />24 <Button25 android:layout_width="0dp"26 android:layout_height="wrap_content"27 android:text="Login"28 />
②擷取資訊
為各控制項添加地址資訊
1 <EditText 2 android:id="@+id/et_qq"//為其添加地址資訊 3 /> 4 <EditText 5 android:id="@+id/et_pwd" 6 /> 7 <CheckBox 8 android:id="@+id/cb_remember" 9 />10 <Button11 android:onClick="login"12 />
控制項設定好為其添加屬性,以及獲得其值
當使用者未輸入帳號和密碼時或只輸入帳號和密碼時,這時出現提醒“帳號和密碼不可為空”
這時要給按鈕添加事件
public class MainActivity extends AppCompatActivity { private static final String tag="tag"; private EditText et_qq;//建立變數 private EditText et_pwd; private CheckBox cb_remember; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_qq = (EditText)findViewById(R.id.et_qq);//初始設定變數固定寫法 et_pwd = (EditText)findViewById(R.id.et_pwd); cb_remember = (CheckBox)findViewById(R.id.cb_remember);} public void login(View view){ String qq= et_qq.getText().toString(); String pwd = et_pwd.getText().toString(); if(TextUtils.isEmpty(qq)||TextUtils.isEmpty(pwd)){ Toast.makeText(this,"使用者名稱密碼不可為空",Toast.LENGTH_SHORT).show();//toast當使用者名稱為空白時,顯示內容為“使用者名稱密碼不可為空” }else{ //登入操作}}
顯示效果:
③在進程中查看是否選了“記住密碼”
列印日誌:
##日誌的層級
log.v(“MainActivity”,“我是一個日誌”);//v:verbose 提醒 黑色
log.d(“MainActivity”,“我是一個日誌”);//d:debug 調試 藍色
log.i(“MainActivity”,“我是一個日誌”);//i:info 提醒 綠色
log.w(“MainActivity”,“我是一個日誌”);//w:warn 警告 橙色
log.e(“MainActivity”,“我是一個日誌”);//e:error 錯誤 紅色
查看效果
未點擊儲存密碼的效果:
點擊儲存密碼的效果:
④將資訊儲存在檔案中
此程式在手機上運行,這時時儲存在手機上的根目錄下的,但是根目錄禁止寫入,所以錯誤。這時儲存資訊到SD卡
容易被垃圾軟體侵犯。
在AndroidManifest.xml中添加使用權限設定
結果:
開啟Android Studio Tools—>Android—>Android Device Monitor報錯:
報錯內容為:
解決方案:
在工作管理員中,將開啟的所有的monitor.exe進程全部關掉,重新開啟就行了。
//讀取使用者儲存的密碼資訊
1 try{ 2 File file = new File("/mnt/sdcard/info.txt");//外置SD卡的路徑 3 FileInputStream fis = new FileInputStream(file); 4 BufferedReader br = new BufferedReader(new InputStreamReader(fis)); 5 String info = br.readLine(); 6 String qq=info.split("###")[0]; 7 String pwd=info.split("###")[1]; 8 et_qq.setText(qq); 9 et_pwd.setText(pwd);10 } catch (Exception e){11 e.printStackTrace();12 }}13 //讀取使用者儲存密碼的檔案
效果如下:
點擊儲存密碼之後,再次點進去之後之前的賬戶和密碼還在
Android下資料存放區:
*SD卡
1.聲明寫SD卡的許可權(資訊清單檔)
2.Environment.getExternalStorageDirectory()//獲得當前SD卡檔案下的目錄
3.判斷SD卡的狀態,是否可以讀
Environment.getExternalStorageState();
4.SD卡可用的情況下,但SD卡已滿了,(判斷SD卡的剩餘空間)
1 Environment.getExternalStorageDirectory().getUsableSpace();//判斷可用空間或者是
2.Environment.getExternalStorageDirectory().getFreeSpace();
本人菜鳥,只是自己的做的實驗的心得,資料的儲存沒搞明白,等我搞明白了,再補一個
Android設計QQ介面以及儲存資料到SD卡和記憶體的方法