Subversion Repositories AndroidProjects

Rev

Rev 25 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
25 chris 1
package com.gebauz.KanaQuiz;
2
 
3
import android.app.Activity;
4
import android.content.Intent;
5
import android.os.Bundle;
6
import android.view.Menu;
7
import android.view.MenuInflater;
8
import android.view.MenuItem;
9
import android.view.View;
10
import android.view.View.OnClickListener;
11
import android.widget.ArrayAdapter;
12
import android.widget.ImageButton;
13
import android.widget.LinearLayout;
14
import android.widget.RadioGroup;
15
import android.widget.Spinner;
16
import com.google.ads.*;
17
 
18
public class MainActivity extends Activity
19
{
20
        private AdView mAdView;
21
 
22
        private OnClickListener mKanaQuizListener = new OnClickListener()
23
        {
24
            public void onClick(View v)
25
            {
26
            Intent intent = new Intent(v.getContext(), QuizActivity.class);
27
            intent.putExtras(prepareBundle(Constants.MODE_KANA));            
28
 
29
            startActivityForResult(intent, 0);
30
            }
31
        };
32
 
33
        private OnClickListener mRomajiQuizListener = new OnClickListener()
34
        {
35
            public void onClick(View v)
36
            {  
37
                Intent intent = new Intent(v.getContext(), QuizActivity.class);
38
                intent.putExtras(prepareBundle(Constants.MODE_ROMAJI));
39
 
40
            startActivityForResult(intent, 0);
41
            }
42
        };
43
 
44
        private Bundle prepareBundle(int mode)
45
        {
46
        Bundle bundle = new Bundle();
47
        bundle.putInt("mode", mode);
48
 
49
        Spinner spinner = (Spinner)findViewById(R.id.spinner);        
50
        bundle.putInt("quiz", spinner.getSelectedItemPosition());
51
 
52
        RadioGroup radioGroupInput = (RadioGroup)findViewById(R.id.radioGroupInput);
53
        switch (radioGroupInput.getCheckedRadioButtonId())
54
        {
55
        case R.id.radioInputSmall:
56
                bundle.putInt("input", Constants.INPUT_SMALL);
57
                break;
58
        case R.id.radioInputFull:
59
        default:
60
                bundle.putInt("input", Constants.INPUT_ALL);                   
61
                break;                                     
62
        }
63
 
64
        return bundle;
65
        }
66
 
67
    /** Called when the activity is first created. */
68
    @Override
69
    public void onCreate(Bundle savedInstanceState)
70
    {
71
        super.onCreate(savedInstanceState);
72
        setContentView(R.layout.main);
73
 
74
        // Create the adView
75
        mAdView = new AdView(this, AdSize.BANNER, Constants.ADMOB_PUBLISHER_ID);
76
 
77
        // Lookup your LinearLayout assuming it’s been given
78
        // the attribute android:id="@+id/mainLayout"
79
        LinearLayout layout = (LinearLayout)findViewById(R.id.mainLayout);
80
 
81
        // Add the adView to it
28 chris 82
        //layout.addView(mAdView);
25 chris 83
 
84
        // Initiate a generic request to load it with an ad
28 chris 85
        //mAdView.loadAd(new AdRequest());
25 chris 86
 
87
        ImageButton button1 = (ImageButton)findViewById(R.id.imageButtonZhuyin);
88
        button1.setOnClickListener(mKanaQuizListener);
89
 
90
        ImageButton button2 = (ImageButton)findViewById(R.id.imageButtonPinyin);
91
        button2.setOnClickListener(mRomajiQuizListener);
92
 
93
        String[] items = getResources().getStringArray(R.array.quiz_characters_options);
94
 
95
        Spinner spinner = (Spinner)findViewById(R.id.spinner);
96
        ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(this, android.R.layout.simple_spinner_item);
97
 
98
        for (int i = 0; i < items.length; i++)
99
        {
100
                int count = Constants.QUIZ_LIMITS[i * 2 + 1] - Constants.QUIZ_LIMITS[i * 2] + 1;
101
                adapter.add(items[i] + " [" + count + "]");
102
        }
103
 
104
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
105
        spinner.setAdapter(adapter);
106
    }
107
 
108
    @Override
109
    public void onDestroy()
110
    {
111
        mAdView.destroy();
112
        super.onDestroy();
113
    }
114
 
115
    @Override
116
    public boolean onCreateOptionsMenu(Menu menu)
117
    {
118
        MenuInflater inflater = getMenuInflater();
119
        inflater.inflate(R.menu.appmenu, menu);
120
        return true;
121
    }
122
 
123
    @Override
124
    public boolean onOptionsItemSelected(MenuItem item)
125
    {
126
        // Handle item selection
127
        switch (item.getItemId())
128
        {
28 chris 129
        case R.id.katakana_table:
130
                KanaTableActivity.show(this, Constants.QUIZ_KATAKANA);
25 chris 131
            return true;
28 chris 132
        case R.id.hiragana_table:
133
                KanaTableActivity.show(this, Constants.QUIZ_HIRAGANA);
134
                return true;
25 chris 135
        case R.id.about:
28 chris 136
                AboutActivity.show(this);
25 chris 137
            return true;
138
        default:
139
            return super.onOptionsItemSelected(item);
140
        }
141
    }
28 chris 142
 
25 chris 143
}
144
 
145
 
146