心算練習:連結到第二頁、傳參數、取得傳入的資料、toast、介面OnItemClickListener
第一頁
package com.jbuduoo.myapplication;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void button(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 100); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
public void button1(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 1000); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
public void button2(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 10000); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
public void button3(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 100000); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
public void button4(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 1000000); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
}
第二頁
package com.jbuduoo.myapplication;
import android.content.Intent;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class Main2Activity extends Activity implements AdapterView.OnItemClickListener{
String[] que=new String[10];
int[] num=new int[10];
int[] num1=new int[10];
int[] ans=new int[10];
ListView listview;
ArrayAdapter<String> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
Intent it = getIntent(); //取得傳入的 Intent 物件
int no = it.getIntExtra("數字", 0); //讀出名為 "編號" 的 Int 資料, 若沒有則傳回 0
for(int i=0;i<10;i++){
num[i]=(int) (Math.random()*no+1);
num1[i]=(int) (Math.random()*no+1);
que[i]=num[i]+"+"+num1[i]+"=";
ans[i]=num[i]+num1[i];
}
listview=findViewById(R.id.listview);
adapter=new ArrayAdapter<>(this,android.R.layout.simple_list_item_1,que);
listview.setAdapter(adapter);
listview.setOnItemClickListener(this);
}
public void button(View v){
finish();
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { //toast類別
Toast.makeText(this,"答案︰" + ans[i], Toast.LENGTH_SHORT).show();
}
}
package com.jbuduoo.myapplication;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void button(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 100); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
public void button1(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 1000); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
public void button2(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 10000); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
public void button3(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 100000); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
public void button4(View v){
Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity
it.putExtra("數字", 1000000); //附加編號
startActivity(it); // 啟動 Intent 中的目標
}
}
第二頁
package com.jbuduoo.myapplication;
import android.content.Intent;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class Main2Activity extends Activity implements AdapterView.OnItemClickListener{
String[] que=new String[10];
int[] num=new int[10];
int[] num1=new int[10];
int[] ans=new int[10];
ListView listview;
ArrayAdapter<String> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
Intent it = getIntent(); //取得傳入的 Intent 物件
int no = it.getIntExtra("數字", 0); //讀出名為 "編號" 的 Int 資料, 若沒有則傳回 0
for(int i=0;i<10;i++){
num[i]=(int) (Math.random()*no+1);
num1[i]=(int) (Math.random()*no+1);
que[i]=num[i]+"+"+num1[i]+"=";
ans[i]=num[i]+num1[i];
}
listview=findViewById(R.id.listview);
adapter=new ArrayAdapter<>(this,android.R.layout.simple_list_item_1,que);
listview.setAdapter(adapter);
listview.setOnItemClickListener(this);
}
public void button(View v){
finish();
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { //toast類別
Toast.makeText(this,"答案︰" + ans[i], Toast.LENGTH_SHORT).show();
}
}
留言
張貼留言