Welcome to touyou note!!

こんにちは。touyouです。touyou noteは、creativeな人間を志すちっぽけな学生が様々なことに体当たりするブログです。
どうぞお楽しみ下さい。

Twitter: @touyoubuntu
HomePage: TOUYOUBUNTU

検索用ワード

PC Linux Windows Cygwin Android Python Java C/C++ C# HTML Processing Lisp Perl Arduino Japanino Unity Google TopCorder Codeforces Vim Emacs Github PSP Gundam Soccer Mobile Dialy Study Music ...

2011年3月14日月曜日

ベータ版アプリ二個リリース。実機試験者募集中…

こんにちは。

この二日間で簡単なAndroidアプリ(初めてのオリジナル♪)を二つリリースしました。
Custom Roulet災害ったーです。


前者はまぁ前々から作りたいと思っていたものです。
後者は東日本大震災とそれに対する日本Androidの会の動きをうけて作った災害用アプリです。まだまだ実用段階には程遠いですが(^_^;)
それぞれapkファイルを倉庫にあげているのでよろしくお願いします(ダウンロードした場合は、どの機種では正常に動きましたなどコメいただければ幸いです。)

アプリ詳細はhttp://beta.touyoubuntu.zatunen.com/app.htmlまで。

こっからはソースコードです。
まずはCustom Rouletから
// import文、package文省略

public class RouletActivity extends Activity {
 
 private Button mSetBtn;
 private Button mDoBtn;
 private Button mClearBtn;
 private EditText mNumET;
 private TextView mResultTV;
 int limit;
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        mSetBtn = (Button)findViewById(R.id.set_btn);
        mDoBtn = (Button)findViewById(R.id.do_btn);
        mClearBtn = (Button)findViewById(R.id.clear_btn);
        mNumET = (EditText)findViewById(R.id.num_et);
        mResultTV = (TextView)findViewById(R.id.result_tv);
        mSetBtn.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          String limitStr = mNumET.getText().toString();
          limit = Integer.parseInt(limitStr);
         }
        });
        mDoBtn.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          Random rand = new Random();
          int result = rand.nextInt(limit)+1;
          String resultStr = String.valueOf(result);
          mResultTV.setText(resultStr);
         }
        });
        mClearBtn.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          mResultTV.setText(" ");
         }
        });
   }
    
   
}
そして災害ったーの二つのアクティビティ。
main
// import, package省略

public class SaigaiActivity extends Activity {
 
 private static final int REQUEST_CODE = 0;
 
 private CheckBox JishinCK;
 private CheckBox CareCK;
 private CheckBox AnpiCK;
 private CheckBox SpotCK;
 private CheckBox HinanCK;
 private CheckBox HelpCK;
 private EditText NameET;
 private EditText MesET;
 private Button OkBTN;
 private Button CancelBTN;
 
 private boolean[] checked = new boolean[6];
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        for (int i = 0; i < 6; i++) {
         checked[i] = false;
        }
     
     super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        JishinCK = (CheckBox)findViewById(R.id.jishin_ck);
        CareCK = (CheckBox)findViewById(R.id.care_ck);
        AnpiCK = (CheckBox)findViewById(R.id.anpi_ck);
        SpotCK = (CheckBox)findViewById(R.id.spot_ck);
        HinanCK = (CheckBox)findViewById(R.id.hinan_ck);
        HelpCK = (CheckBox)findViewById(R.id.help_ck);
        NameET = (EditText)findViewById(R.id.name_et);
        MesET = (EditText)findViewById(R.id.mes_et);
        OkBTN = (Button)findViewById(R.id.ok_btn);
        CancelBTN = (Button)findViewById(R.id.cancel_btn);
        JishinCK.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          CheckBox checkBox = (CheckBox) v;
          checked[0] = checkBox.isChecked();
         }
        });
        CareCK.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          CheckBox checkBox = (CheckBox) v;
          checked[1] = checkBox.isChecked();
         }
        });
        AnpiCK.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          CheckBox checkBox = (CheckBox) v;
          checked[2] = checkBox.isChecked();
         }
        });
        SpotCK.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          CheckBox checkBox = (CheckBox) v;
          checked[3] = checkBox.isChecked();
         }
        });
        HinanCK.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          CheckBox checkBox = (CheckBox) v;
          checked[4] = checkBox.isChecked();
         }
        });
        HelpCK.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          CheckBox checkBox = (CheckBox) v;
          checked[5] = checkBox.isChecked();
         }
        });
        OkBTN.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          String name = NameET.getText().toString();
          String message = MesET.getText().toString();
          if (message.length() >= 50) {
           char[] mes = message.toCharArray();
           message = new String(mes, 0, 47) + "...";
          }
          if (checked[0]) message += " #jishin";
          if (checked[1]) message += " #311care";
          if (checked[2]) message += " #anpi";
          if (checked[3]) message += " #311sppt";
          if (checked[4]) message += " #hinan";
          if (checked[5]) message += " #j_j_helpme";
          String result = name+message;
          Intent it = new Intent();
          it.putExtra("content", result);
          startActivityForResult(it, REQUEST_CODE);
         }
        });
        CancelBTN.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
          NameET.setText("");
          MesET.setText("");
          JishinCK.setChecked(false);
          CareCK.setChecked(false);
          AnpiCK.setChecked(false);
          SpotCK.setChecked(false);
          HinanCK.setChecked(false);
          HelpCK.setChecked(false);
         }
        });
    }
    
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
     if (resultCode == Activity.RESULT_OK && requestCode == REQUEST_CODE) {
      int num = data.getIntExtra("num", 0);
      if (num <= 140) {
       NameET.setText("");
          MesET.setText("");
          JishinCK.setChecked(false);
          CareCK.setChecked(false);
          AnpiCK.setChecked(false);
          SpotCK.setChecked(false);
          HinanCK.setChecked(false);
          HelpCK.setChecked(false);
      }
     }
    }
}
result
// import, package省略

public class ResultActivity extends Activity implements OnClickListener {
 private EditText resultET;
 private String mText;
 
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  Intent it = getIntent();
  mText = it.getStringExtra("text");
  setContentView(R.layout.result);
  resultET = (EditText)findViewById(R.id.result_et);
  resultET.setText(mText);
  Button btn = (Button)findViewById(R.id.done_btn);
  btn.setOnClickListener(this);
 }
 
 public void onClick(View v) {
  int num = mText.length();
  Intent it = new Intent();
  it.putExtra("num", num);
  setResult(Activity.RESULT_OK, it);
  finish();
 }
}

バグ、修正点あればお願いします。

0 件のコメント:

コメントを投稿