どらちゃんのポッケ

R・統計・技術メモなど勉強ログ置き場

Androidネイティブアプリをもう一度学び直す1

新人のときにAndroid触って以来、触っていないし、忘れてしまった。 というのと、新人の頃より、ある程度レベルアップした今なら、もう少し理解度を高められるだろうということで、学び直してみる

事前準備

  • MACの場合、eclipceのインテリセンスのショートカットキーを設定しておく
    • 環境設定 > key > Content Assist

基本

UIコンポーネントの配置GUIで配置する

f:id:sleeping_micchi:20140129003219p:plain

プロパティ

  • id
    • @+id/button1
    • R.id.button1 としてRに登録される
  • Text
    • @string/now
    • テキスト直打ちでなく、設定ファイルに外だししている
  • Layout Parameter
    • widthなどで親オブジェクトにそろえるなどの指定
  • onClick
    • android:onClick="click"
      • 下記のようなclickイベントが呼ばれる
    • clickのみGUIのプロパティで設定可能になっている

        public void click(View view){  
                //findViewByIdでRからUI部品を取得している
                TextView txt = (TextView)findViewById(R.id.button1);
                txt.setText(new Date().toString());
            }
      

イベントリスナー

  • onCreateなどでリスナーの設定

      Button btn = (Button) findViewById(R.id.button2);
              btn.setOnClickListener(new View.OnClickListener() {
                  @Override //無名関数
                  public void onClick(View v) {
                      TextView txt = (TextView) findViewById(R.id.button2);
                      txt.setText(new Date().toString());
                  }
              });
    

アプリ停止時のテータ保存

  • protected void onSaveInstanceState(Bundle outState)
  • protected void onRestoreInstanceState(Bundle savedInstanceState)

Toastの表示

  • 瞬間的に出るポップアップ

      Toast toast = Toast.makeText(this, "うぉりゃ", Toast.LENGTH_LONG);
      toast.show();