2010-10-19 3 views
0

Я пишу андроид приложение, проверьте имя пользователя и пароль пользователя, как только кнопка Войти щёлкнулиандроид приложение зависает при нажатии кнопки

я запустить приложение в эмуляторе и при нажатии на кнопку входа приложение разбился

package com.google.android.InitialScreen; 

import android.app.TabActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TabHost; 


public class InitialScreen extends TabActivity implements View.OnClickListener { 


    EditText username; 
    EditText password; 
    Button login; 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     username = (EditText) findViewById(R.id.usernamefield); 
     password = (EditText) findViewById(R.id.passwordfield); 

     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     TabHost mTabHost = getTabHost(); 

     mTabHost.addTab(mTabHost.newTabSpec("tab_test1") 
       .setIndicator("TAB 1") 
       .setContent(R.id.tabview1)); 

     this.login = (Button)findViewById(R.id.login); 

     this.login.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       if ((username.getText().length()==0)&&(password.getText().length()==0)) 
        username.setText("u&p"); 
//     Toast.makeText(getApplicationContext(), "Please Enter Username and Password", Toast.LENGTH_SHORT).show(); 
       else if ((username.getText().length()==0)){ 
        username.setText("u"); 
//     Toast.makeText(getApplicationContext(), "Please Enter Username", Toast.LENGTH_SHORT).show(); 
       } 
       else if (password.getText().length()==0) 
        username.setText("p"); 
       else 
        username.setText("ok"); 
      } 
     }); 
       mTabHost.addTab(mTabHost.newTabSpec("tab_test2") 
       .setIndicator("TAB 2") 
       .setContent(R.id.tabview2)); 

       mTabHost.setCurrentTab(0); 
    } 
} 
+0

Никто не поможет вам без этого, сообщение об ошибке и два, без каких-либо усилий с вашей стороны, чтобы правильно отформатировать сообщение. – user432209

+0

Используйте 'adb logcat', DDMS или перспективу DDMS в Eclipse для проверки LogCat и просмотра трассировки стека, связанной с вашим сбоем. – CommonsWare

ответ

1

Я думаю, вы должны инициализировать имя пользователя и пароль, после вызова

super.onCreate(savedInstanceState); 
setContentView(R.layout.main); 

Просто догадка. Отправляйте трассировку стека - это может действительно помочь.

+0

Да, это проблема OP. 'username' и' password' являются как «null», так и при нажатии на кнопку «NullPointerException». – Felix

Смежные вопросы