リスト1
package com.tyrell_replicants.sample05;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.provider.Settings;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MyMainActivity extends Activity {
/** Called when the activity is first created. */
private TextView message;
private EditText inputText;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
message = (TextView)this.findViewById(R.id.Message);
inputText=(EditText)this.findViewById(R.id.InputText);
}
//
// method for SetButton
//
public void SetButtonOnClick(View v){
// make Intent call for SubActivity class
Intent subactivity = new Intent(this,com.tyrell_replicants.sample05.SubActivity.class);
// make String for pass to the Sub Activity
String sendMessage = inputText.getText().toString();
// Add Extra String Data to Intent
subactivity.putExtra(this.getString(R.string.ExtraString01), sendMessage);
// Call Intent and Get Result
startActivityForResult(subactivity, R.id.IntentRequestGeneral);
// Display "SubActivity" Class.......
}
//
// EventListener for Intent Return with Result
//
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
if (requestCode == R.id.IntentRequestGeneral ){
String returnMessage = data.getStringExtra(this.getString(R.string.ExtraString01));
message.setText(this.getString(R.string.MainDispString)+" " +returnMessage);
}
} else {
Toast.makeText(this, "onActivityResult NOT RESULT_OK", Toast.LENGTH_SHORT).show();
}
}
//
// method for webOpenButton
//
public void webOpen(View v){
Uri myUri = Uri.parse(this.getString(R.string.myURL));
Intent webIntent = new Intent(Intent.ACTION_VIEW,myUri);
startActivity(webIntent);
}
//
// method for SetDateButton
//
public void setDatePrefs(View v){
// Intent intent = new Intent("android.settings.DATE_SETTINGS");
Intent intent = new Intent(Settings.ACTION_DATE_SETTINGS);
startActivity(intent);
}
//
// method for selectMusicButton
//
public void selectMusic(View v){
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("audio/*");
startActivity(Intent.createChooser(intent, "Select music"));
}
}
リスト2
package com.tyrell_replicants.sample05;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
public class SubActivity extends Activity {
private EditText myEditText;
private Intent returnIntent;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Start after intent in MyMainActivity class
// 1st we make View
setContentView(R.layout.sub);
myEditText = (EditText)this.findViewById(R.id.SubEditText);
TextView myPassedText = (TextView)this.findViewById(R.id.SubStringDisplay);
// Get Extra String data from Intent
String displayMessage = getIntent().getStringExtra(this.getString(R.string.ExtraString01));
Log.d("sub",displayMessage);
// Display String passed from MyMainActivity
myPassedText.setText(this.getString(R.string.SubYourString)+" "+displayMessage);
returnIntent = new Intent();
setResult(RESULT_CANCELED, returnIntent);
}
//
// Method for ReturnButton
//
public void returnButtonPushed(View v){
// 1st we make Intent for retrun
// Get String for retrun Extra data
String returnText = myEditText.getText().toString();
Log.d("sub",returnText);
// And Set Extra data to returnIntent
returnIntent.putExtra(this.getString(R.string.ExtraString01),returnText );
// Set Intent Result code 'OK'
setResult(RESULT_OK, returnIntent);
// Terminate this
finish();
}
}
リスト3
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:id="@+id/MainVerticalLayout">
<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content" android:id="@+id/Message"
android:text="@string/MainDispString"/>
<LinearLayout android:layout_height="wrap_content"
android:orientation="horizontal" android:layout_width="fill_parent"
android:id="@+id/InputAreaHLayout">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/editNameLabel"
android:textSize="17sp" android:id="@+id/InputLabel"></TextView>
<EditText android:layout_height="wrap_content"
android:layout_width="wrap_content" android:layout_weight="1"
android:id="@+id/InputText" android:text="@string/DefaultEditText"
android:selectAllOnFocus="true"></EditText>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/NameButtonLabel"
android:id="@+id/SetButton" android:onClick="SetButtonOnClick"></Button>
</LinearLayout>
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:id="@+id/WebOpenButton" android:layout_gravity="fill_vertical|center_horizontal"
android:onClick="webOpen" android:text="@string/webOpenButtonLabel"></Button>
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:id="@+id/SetDateButton" android:text="@string/SetDateButtonLabel"
android:layout_gravity="center_horizontal" android:onClick="setDatePrefs"></Button>
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:id="@+id/SelectMusicButton" android:text="@string/SelectMusicButtonLabel"
android:layout_gravity="center_horizontal" android:onClick="selectMusic"></Button>
</LinearLayout>
リスト4
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content" android:orientation="vertical"
android:layout_width="fill_parent">
<TextView android:layout_height="wrap_content" android:layout_width="fill_parent"
android:id="@+id/SubStringDisplay" android:text="@string/SubYourString"></TextView>
<EditText android:layout_height="wrap_content" android:layout_width="fill_parent"
android:text="@string/DefaultEditText" android:selectAllOnFocus="true"
android:id="@+id/SubEditText"></EditText>
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:text="@string/SubButton"
android:id="@+id/ReturnButton" android:onClick="returnButtonPushed"></Button>
</LinearLayout>
この連載の記事
-
第11回
スマホ
アプリケーションをAndroidマーケットに登録する -
第10回
スマホ
ブロードキャストへの応答とタイマ割り込み -
第9回
スマホ
Androidアプリで複数の項目を表示するリストビューを使う -
第8回
スマホ
Androidアプリに必要なダイアログを作る -
第7回
スマホ
Androidアプリの設定画面を作成する -
第6回
スマホ
Androidアプリ内で表示されるメニューを作成する -
第4回
スマホ
Androidアプリを構成する「アクティビティ」を実際に作る -
第3回
スマホ
アプリケーションの基本となる「アクティビティ」 -
第2回
スマホ
開発したアプリをエミュレーターやデバッガ上でテストする -
第1回
スマホ
Androidアプリの開発環境であるEclipseの使い方を知る - この連載の一覧へ