忍者ブログ
  • 2024.10«
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • » 2024.12
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【2024/11/23 00:06 】 |
Intentその1 送るだけ
EditTextに入力した文字列をSubActivityのTextViewで表示する。

とりあえずプロジェクトを作成したらManifestFileにActivityを追加してからプログラムを作る
忘れてることを忘れる(笑)


public class MainActivity extends Activity {
private EditText ed;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

ed = (EditText)findViewById(R.id.editText);
}
public void intentButtonClickListener(View view){
final String edString = ed.getText().toString();
AlertDialog.Builder ab = new AlertDialog.Builder(this);
ab.setTitle("別アクティビティの起動");
ab.setMessage(edString+"を別のアクティビティで表示します");
ab.setPositiveButton("はい", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {
// Intent生成 new Intent(自アクティビティ,送り先Activity名.class);
Intent intent = new Intent(MainActivity.this,SubActivity.class);
// 送りたい情報の設定・・・①
intent.putExtra("MESSAGE",edString);
startActivity(intent);

}
});
ab.setNegativeButton("いいえ", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub

}
});
ab.show();

}
}


SubActivity

public class SubActivity extends Activity {
private String text;
private TextView textview;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sub);
textview = (TextView)findViewById(R.id.displayview);

Intent intent = getIntent();
text = intent.getStringExtra("MESSAGE");
textview.setText(text);
}
public void backButton(View v){
finish();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_sub, menu);
return true;
}
}

xmlファイルは割愛
id名は
MainのEditTextの名前はeditText
SubのTextViewの名前はdisplayview
としています。

①putExtra(第1引数,第2匹数);
第1引数はキー
第2引数はデータ
SharedPreferencesのような感じ
ArrayListを送りたい場合はputExtraではなく
putIntegerArrayListExtra
put◎◎ArrayListExtraとなる。

PR
【2013/03/01 21:13 】 | Android | 有り難いご意見(0)
checkboxのあるAlertDialog
CheckBoxのあるダイアログ


private int which = 0;
private String [] items;

public void button(View v) {
items= new String[]{"Aプラン","Bプラン","Cプラン"};
AlertDialog.Builder ab = new AlertDialog.Builder(this);
ab.setTitle("AlertDialogのサンプル");

ab.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int whichButton) {
// TODO Auto-generated method stub
which = whichButton;
}
});
// YESボタン
ab.setPositiveButton("決定", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int whichButton) {
// TODO Auto-generated method stub
// 選択した項目を取得
String selected = items[which]; 
// 選択した項目をToast
Toast.makeText(getApplicationContext(), selected, Toast.LENGTH_LONG).show();
}
});

// NOボタン
ab.setNegativeButton("戻る", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// NOボタンを押したときの処理はここに書く
}

});
ab.show(); // 表示。コレを忘れると表示されない
【2013/02/28 19:20 】 | Android | 有り難いご意見(0)
EditTextのあるダイアログ
AlertDialog EditTextがあるダイアログ




EditTextがあるダイアログ

public void button(View v) {
EditText editText = new EditText(this);
AlertDialog.Builder ab = new AlertDialog.Builder(this);
ab.setTitle("AlertDialogのサンプル");
ab.setMessage("メッセージ");
ab.setView(editText);
// YESボタン
ab.setPositiveButton("YES", new DialogInterface.OnClickListener() {.........



【2013/02/28 18:53 】 | Android | 有り難いご意見(0)
Android:AlertDialog
AlertDialogの作り方メモ

ボタン押下後アラートダイアログが表示されます。

public void button(View v) {
AlertDialog.Builder ab = new AlertDialog.Builder(this);
ab.setTitle("AlertDialogのサンプル");
ab.setMessage("メッセージ");
// YESボタン
ab.setPositiveButton("YES", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// ここにYESボタンを押したときの処理はここに書く
}
});
// 中間のボタン
ab.setNeutralButton("中間", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// ここに中間ボタンを押した時の処理はここに書く
}
});
// NOボタン
ab.setNegativeButton("NO", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// NOボタンを押したときの処理はここに書く
}

});
ab.show(); // 表示。コレを忘れると表示されない
}


メモ書き

だいたいの場合「はい」か「いいえ」の2種類だけで足りる。
PositiveやらNegativeとついていますが「ただの名前」だと思うので処理内容やtitle名はそれに反してもいいかと思います。
つまり誤操作を防ぎたい場合に「はい」と「いいえ」を逆転させたりなどもできる。
ただし、プログラムには注釈入れといた方が後でいいかと思います。

いちおうNeutralがあるってことだけ記憶に入れとく。





余談
Positive:肯定的
Negative:否定的
Neutral:中立的
軍隊では作戦中のYESやNOを(聞き取りやすいように?)Positive,Negativeで返答してたりします。
【2013/02/28 18:22 】 | Android | 有り難いご意見(0)
AVFoundationを使って、アプリでBGMを流す方法。
AVFoundationをつかって、アプリ起動時にBGMを流す方法。

こんにちは。
前期授業でボタンを押したときに効果音が鳴る方法をやったので、BGMを同じ方法でながせればと思いましたがうまくいきません。

調べてみるとAudioToolboxは
・読み込みが早い。
30秒以内の音

というモノでした。

そこで別のAVFoundationフレームワークをつかう。
このフレームワークは動画の再生などにも使うそうです。(そこまで勉強してないので「〜そうです。」)

BGMなので交換とは違い無限ループさせたいというときは・・・。
.numberOfLoops = -1 ;
を追加する。-1が無限、0が1、1が2。
【2013/01/04 14:59 】 | Objective-C | 有り難いご意見(0)
前ページ | ホーム | 次ページ

忍者ブログ [PR]