如果我扩展TabActivity

时间:2015-11-08 15:39:18

标签: android

我正在尝试制作两个标签。第一个标签是EditText组件,然后是Button组件。我希望当我按下第一个标签上的按钮时,它会将EditText组件中的文本发送到标签2中的TextView组件。

public class MainActivity extends TabActivity{
EditText boxnama;
EditText boxalamat;
Spinner tanggal;
Spinner bulan;
Spinner tahun;
RadioGroup rg;
RadioButton pria;
RadioButton wanita;
CheckBox basket;
CheckBox bola;
CheckBox robot;
Button ok;
TextView hasil;
TabHost tabHost = getTabHost();

@Override
protected void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    boxnama = (EditText) findViewById(R.id.boxnama);
    boxalamat = (EditText) findViewById(R.id.boxalamat);
    tanggal = (Spinner) findViewById(R.id.tanggal);
    bulan = (Spinner) findViewById(R.id.bulan);
    tahun = (Spinner) findViewById(R.id.tahun);
    rg = (RadioGroup) findViewById(R.id.radioGroup1);
    pria = (RadioButton) findViewById(R.id.pria);
    wanita = (RadioButton) findViewById(R.id.wanita);
    basket = (CheckBox) findViewById(R.id.basket);
    bola = (CheckBox) findViewById(R.id.bola);
    robot = (CheckBox) findViewById(R.id.robot);
    hasil = (TextView) findViewById(R.id.hasil);
    ok = (Button) findViewById(R.id.button);
    ok.setOnClickListener(new click()); // error on this line, if i delete this line, my program run smoothly
                                        // but i won't have my button function

    LayoutInflater.from(this).inflate(R.layout.activity_main, tabHost.getTabContentView(),true);
    tabHost.addTab(tabHost.newTabSpec("TAB1").setIndicator("TAB1").setContent(R.id.tabsatu));
    tabHost.addTab(tabHost.newTabSpec("TAB2").setIndicator("TAB2").setContent(R.id.tabdua));


}

public class click implements Button.OnClickListener{
    public void onClick(View v){
        //my code for button here
    }
}

现在这里logcat说

  

11-09 08:29:15.385:D / AndroidRuntime(826):关闭VM   11-09 08:29:15.385:W / dalvikvm(826):threadid = 1:线程退出未捕获异常(组= 0x414c4700)   11-09 08:29:15.492:E / AndroidRuntime(826):致命异常:主要   11-09 08:29:15.492:E / AndroidRuntime(826):java.lang.RuntimeException:无法实例化活动ComponentInfo {com.example.tugas / com.example.tugas.MainActivity}:java.lang.NullPointerException   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2137)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.ActivityThread.access $ 600(ActivityThread.java:141)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1256)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.os.Handler.dispatchMessage(Handler.java:99)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.os.Looper.loop(Looper.java:137)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.ActivityThread.main(ActivityThread.java:5103)   11-09 08:29:15.492:E / AndroidRuntime(826):at java.lang.reflect.Method.invokeNative(Native Method)   11-09 08:29:15.492:E / AndroidRuntime(826):at java.lang.reflect.Method.invoke(Method.java:525)   11-09 08:29:15.492:E / AndroidRuntime(826):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:737)   11-09 08:29:15.492:E / AndroidRuntime(826):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)   11-09 08:29:15.492:E / AndroidRuntime(826):at dalvik.system.NativeStart.main(Native Method)   11-09 08:29:15.492:E / AndroidRuntime(826):引起:java.lang.NullPointerException   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.Activity.setContentView(Activity.java:1895)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.TabActivity.ensureTabHost(TabActivity.java:140)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.TabActivity.getTabHost(TabActivity.java:162)   11-09 08:29:15.492:E / AndroidRuntime(826):at com.example.tugas.MainActivity。(MainActivity.java:32)   11-09 08:29:15.492:E / AndroidRuntime(826):at java.lang.Class.newInstanceImpl(Native Method)   11-09 08:29:15.492:E / AndroidRuntime(826):at java.lang.Class.newInstance(Class.java:1130)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.Instrumentation.newActivity(Instrumentation.java:1061)   11-09 08:29:15.492:E / AndroidRuntime(826):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2128)   11-09 08:29:15.492:E / AndroidRuntime(826):... 11更多

0 个答案:

没有答案