1)說明:
res:操作畫面(UI)有關的資源
drawable:圖片=>JPG,PNG,GIF...
layout:XML=>操作畫面
mipmap:ICON=>APP LOGO
values:每頁所需的標題,專有名稱
a.做兩個可以用按鈕切換的頁面,用values設定文字範本=>values/strings.xml,設定每個要使用文字的元件的代號
<resources>
    <string name="app_name">Test20</string>
    <string name="title1">比賽項目</string>
    <string name="t1_1">足球</string>
    <string name="t1_2">棒球</string>
    <string name="title2">身分別</string>
    <string name="t2_1">男</string>
    <string name="t2_2">女</string>
</resources>
 
**說明:
1.name="代號"
2. <string name="app_name">Test20</string>=>這邊兩個tag中間就是要顯示的內容
3.如果button的文字也想要設定,也可在此設定
 
 
b.切回ui介面使用@string/title1就可以抓到 strings.xml中設定的內容了(如下)
<TextView
    android:id="@+id/textView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textSize="30sp"
    android:text="@string/title1/>
 
c.不用onclick用別的做法切換頁面
private Button.OnClickListener k=new Button.OnClickListener(){
    @Override
    public void onClick(View view) {
        Intent in=new Intent();
        in.setClass(MainActivity.this,P2.class);
        startActivity(in);
    }
};
**說明:
1.因為這個功能只給 MainActivity這個class用,所以可以設定private
2. Button.打完之後精靈抓出來的全部都是按鈕操作的模式,選擇要用的
3. OnClickListener是interface,不能直接new,所以是用匿名類別的作法,實際上是new {}中的內容
4. OnClickListener是在等使用者按下去的動作
5.此時k就成為一個listener物件,裡面有onClick method,這個method就是要做煥頁的動作
 
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    a1=(Button)findViewById(R.id.a1);
    a2=(Button)findViewById(R.id.a2);
    c1=(CheckBox) findViewById(R.id.c1);
    c2=(CheckBox) findViewById(R.id.c2);
    a1.setOnClickListener(k);
}
**說明:
1.按a1時,啟動k物件的內容,要寫在onCreate中,當app啟動時就要執行a1的等待功能
2.a1.setOnclickListener(k)就是在a1設定一個等user按下的功能
 
 
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
   
    a1=(Button)findViewById(R.id.a1);
    a2=(Button)findViewById(R.id.a2);
    c1=(CheckBox) findViewById(R.id.c1);
    c2=(CheckBox) findViewById(R.id.c2);
    a1.setOnClickListener(k);
    a2.setOnClickListener(k2);
 
}
private Button.OnClickListener k=new Button.OnClickListener(){
    @Override
    public void onClick(View view) {
        Intent in=new Intent();
        in.setClass(MainActivity.this,P2.class);
        startActivity(in);
    }
};
private Button.OnClickListener k2=new Button.OnClickListener(){
    @Override
    public void onClick(View view) {
String msg="";
if(c1.isChecked())msg=msg+"足球\n";
if(c2.isChecked())msg=msg+"棒球";
        Toast t=Toast.(MainActivity.this,"welcome to this world",Toast.LENGTH_LONG);
         t.setGravity(Gravity.CENTER,0,0);
         t.show();
}
};
**說明:
可以在下方寫很多功能,直接在上面的按鈕套用想要的功能
 
 
public class P2 extends AppCompatActivity {
    Button b1,b2;
    RadioButton r1,r2;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_p2);
        b1=(Button)findViewById(R.id.b1);
        b2=(Button)findViewById(R.id.b2);
        r1=(RadioButton) findViewById(R.id.r1);
        r2=(RadioButton) findViewById(R.id.r2);
        b1.setOnClickListener(
                new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        Intent in=new Intent();
                        in.setClass(P2.this,MainActivity.class);
                        startActivity(in);
                    }
                }
        );
    }
}
**說明:
在第二頁改為,不再new物件給k,直接把listener物件在setOnClickListener中new
 
 
2)顯示訊息=>Tosast(可以搭配if或exception,指定在某些狀況下出現)
a.Toast 物件名稱=Toast.makeText(目前的class.this,"內容",持續時間);
   物件名.show();
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Toast t=Toast.makeText(MainActivity.this,"welcome to this world",Toast.LENGTH_LONG);
        t.show();
    }
}
 
b.Toast.makeText(目前的class.this,"內容",時間).show();
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
      Toast.makeText(MainActivity.this,"welcome to this world",Toast.LENGTH_LONG).show();
    }
}
 
c.如果直接用show()會放在最下面,要調整位置可以在show()之前用
=>setGravity(Gravity.位置,x,y)
=>位置:CENTER,LEFT,RIGHT....
=> x從上述指定位置往左(負)右(正)調整
=>y從上述指定位置往上(負)下(正)調整
 
*程式參考(gitHub):values/strings.xml and Toast
 
 
 
arrow
arrow
    創作者介紹
    創作者 muchone 的頭像
    muchone

    簡單。生活。享受

    muchone 發表在 痞客邦 留言(0) 人氣()