15 thg 5, 2011

Intent II

Intent II 

Step 1 : 
 
Step 2 :

Step 3 :



Code :


strings.xml :

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">Demo Intents-II </string>
    <string name="second_activity_name">Activity : COLORPICKER</string>
    <string name="textlable1">Your most favourite color is</string>
    <string name="textlable2">Choose your favourite color</string>
    <string name="red">RED</string>
    <string name="green">GREEN</string>
    <string name="blue">BLUE</string>
    <string name="buttonText">Pick your favourite color</string>
    <string name="radioRed">I like red</string>
    <string name="radioGreen">I enjoy green</string>
    <string name="radioBlue">I love blue</string>
</resources>


main.xml


<?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:gravity="center"
    android:padding="8dp" >
    <TextView 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textColor="#ffffff"
        android:text="@string/textlable1" />
    <TextView
        android:id="@+id/lableRed"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="72sp"
        android:textStyle="bold"
        android:textColor="#666666"
        android:text="@string/red" />
       
    <TextView
        android:id="@+id/lableGreen"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="72sp"
        android:textStyle="bold"
        android:textColor="#666666"
        android:text="@string/green" />
       
    <TextView
        android:id="@+id/lableBlue"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="72sp"
        android:textStyle="bold"
        android:textColor="#666666"
        android:text="@string/blue" />
       
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="@string/buttonText"
        android:id="@+id/pickbutton"
        android:onClick="buttonClickHandler" />
</LinearLayout>


picker.xml



<?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:gravity="center"
  android:padding="8dp" >
 
  <TextView
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:gravity="center"
      android:textColor="#ffffff"
      android:text="@string/textlable2" />
     
      <RadioGroup
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:id="@+id/radiogroup" >
     
          <RadioButton
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:text="@string/radioRed"
              android:textColor="#ff0000"
              android:id="@+id/radioRed"
              android:layout_weight="1"
              android:onClick="radioClickHandler" />
         
          <RadioButton
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:text="@string/radioGreen"
              android:textColor="#00ff00"
              android:id="@+id/radioGreen"
              android:layout_weight="1"
              android:onClick="radioClickHandler" />
         
          <RadioButton
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:text="@string/radioBlue"
              android:textColor="#0000ff"
              android:id="@+id/radioBlue"
              android:layout_weight="1"
              android:onClick="radioClickHandler" />
         
      </RadioGroup>            
</LinearLayout>


Episode.java


package com.example.Intents;


import android.app.Activity;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

public class Episode11 extends Activity {
   
    static final private int CHOOSE_COLOR = 0 ;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
   
   private void resetColor(){
      
       TextView tv ;
      
       tv = (TextView) findViewById(R.id.lableRed);
       tv.setTextColor(Color.parseColor("#666666"));
       tv = (TextView) findViewById(R.id.lableGreen);
       tv.setTextColor(Color.parseColor("#666666"));
       tv = (TextView) findViewById(R.id.lableBlue);
       tv.setTextColor(Color.parseColor("#666666"));
   }
  
   public void buttonClickHandler(View target){
   
       Intent question = new Intent(this, com.example.Intents.ColorPicker.class);
       startActivityForResult(question, CHOOSE_COLOR);
   }
  
   @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
       switch(requestCode)
       {
       case CHOOSE_COLOR :
           if(resultCode==RESULT_OK)
           {
               resetColor();
               String color = data.getExtras().getString("color");
               int lable = data.getExtras().getInt("lable");
              
               TextView tv = (TextView) findViewById(lable);
               tv.setTextColor(Color.parseColor(color));
           }
           break ;
       default :
             break ;
       }
   }
}


ColorPicker.java


package com.example.Intents;


import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;

public class ColorPicker extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.picker);
    }   
    public void radioClickHandler (View v)
    {
        Intent answer = new Intent();
       
        switch(v.getId())
        {
            case R.id.radioRed :
                answer.putExtra("color", "#ff0000");
                answer.putExtra("lable", R.id.lableRed);
                break ;
            case R.id.radioGreen :
                answer.putExtra("color", "#00ff00");
                answer.putExtra("lable", R.id.lableGreen);
                break ;
            case R.id.radioBlue :
                answer.putExtra("color", "#0000ff");
                answer.putExtra("lable", R.id.lableBlue);
                break ;
        }
       
        setResult(RESULT_OK,answer);
        finish();
    }
}

Không có nhận xét nào:

Đăng nhận xét

Bản beta đầu tiên

Sau 6 tháng cả team cặm cụi làm việc điên cuồng, bản alpha cũng được giới thiệu ra toàn bộ công ty và được testing nội bộ công ty mà thôi. ...