程序启动时有一个全屏界面,1秒后转到登录界面,现在的情况是启动到第一个界面后没有转到登录界面,而是白屏,看了logcat,只有第一个界面的activity运行了,其他的都没有运行,付图:
每一个的Activity的setContentView下面都写了System.out.只有第一个打印了:下面是Manifest.xml配置:
androidManifest.xml

解决方案 »

  1.   

    public class SplashActivity extends Activity {
    private Intent intent; @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.splash);
    System.out.println("this is splash part");
    startMainActivity();
    } private void startMainActivity() {
    // TODO Auto-generated method stub
    new Handler().postDelayed(new Runnable() { @Override
    public void run() {
    // TODO Auto-generated method stub
    intent = new Intent(SplashActivity.this,Login.class);
    startActivity(intent);
    SplashActivity.this.finish();
    } }, 1000); System.out.println("fault");
    }
    }
      

  2.   

    我这边不行,用自己的电脑也不行,转不到那个Login.class
      

  3.   


    图片最后一行是Login的log!就没有往下打印了,一直停在那
      

  4.   


    图片最后一行是Login的log!就没有往下打印了,一直停在那
    你的login的acivity里面的onCreate方法作了耗时的操作引起了ANR
      

  5.   


    图片最后一行是Login的log!就没有往下打印了,一直停在那
    你的login的acivity里面的onCreate方法作了耗时的操作引起了ANR有什么可行的解决方法
      

  6.   

    我这边不行,用自己的电脑也不行,转不到那个Login.classpublic class Login extends Activity {
    private Button register;
    private Button login;
      private EditText idText;
      private EditText passwordText;
      private String username;
      private String password;
      private CheckBox saveword;
     
      protected void onCreated(Bundle savedInstanceState){
      super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            System.out.println("this is login part");
            register = (Button)findViewById(R.id.regist);
            saveword = (CheckBox)findViewById(R.id.auto_save_password);
            login = (Button)findViewById(R.id.button1);
            idText = (EditText)findViewById(R.id.username);
            passwordText = (EditText)findViewById(R.id.password); 
            
            register.setOnClickListener(new OnClickListener()
            {

    public void onClick(View v)
    {

    Intent  intent = new Intent();
    intent.setClass(Login.this,Resgiter.class);
                Login.this.startActivity(intent); 
    }
    });
           
            login.setOnClickListener(new MyButtonListener());
        }
            class MyButtonListener implements OnClickListener
            {
            
             User user = new User(); 
             boolean checked = false; 
    public void onClick(View v) 
    {
    username = idText.getText().toString();
    password = passwordText.getText().toString();
    user.setName(username);
    user.setPassword(password);

    //创建一个DatabaseHelper对象
    DatabaseHelper dbHelper = new DatabaseHelper(Login.this);
    SQLiteDatabase db = dbHelper.getReadableDatabase();
    checked = UserWay.queryDatabase(user, db);

    if(checked)
    {
    finish();
    Toast.makeText(Login.this, "登陆成功!", Toast.LENGTH_SHORT).show();
    Intent intent = new Intent();
    intent.setClass(Login.this, MainActivity.class);
    Login.this.startActivity(intent);
    }
    else
    {
    finish();
    Toast.makeText(Login.this, "账号或密码错误,请重新登录!", Toast.LENGTH_SHORT).show();
    Intent intent = new Intent();
    intent.setClass(Login.this,Login.class);
                Login.this.startActivity(intent);
    }
    db.close();

    }
            
            
        }
    }
     
      

  7.   


    图片最后一行是Login的log!就没有往下打印了,一直停在那
    你的login的acivity里面的onCreate方法作了耗时的操作引起了ANR有什么可行的解决方法
    你把耗时的操作放到thread里面去做,参考以下代码 HandlerThread hanThread = new HandlerThread("test");
    hanThread.start();
    Handler hander = new Handler(hanThread.getLooper());
    hander.post(new Runnable() {

    @Override
    public void run() {
    //do here

    }
    });
      

  8.   


    图片最后一行是Login的log!就没有往下打印了,一直停在那
    你的login的acivity里面的onCreate方法作了耗时的操作引起了ANR有什么可行的解决方法
    你把耗时的操作放到thread里面去做,参考以下代码 HandlerThread hanThread = new HandlerThread("test");
    hanThread.start();
    Handler hander = new Handler(hanThread.getLooper());
    hander.post(new Runnable() {

    @Override
    public void run() {
    //do here

    }
    });package com.example.login;import android.app.Activity;
    import android.content.Intent;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.os.Handler;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.CheckBox;
    import android.widget.EditText;
    import android.widget.Toast;import com.example.pingziyi.MainActivity;
    import com.example.pingziyi.R;public class Login extends Activity {
    private Button register;
    private Button login;
    private EditText idText;
    private EditText passwordText;
    private String username;
    private String password;
    private CheckBox saveword; private android.os.Handler handler = new Handler(); protected void onCreated(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    System.out.println("this is login part");
    register = (Button) findViewById(R.id.regist);
    saveword = (CheckBox) findViewById(R.id.auto_save_password);
    login = (Button) findViewById(R.id.button1);
    idText = (EditText) findViewById(R.id.username);
    passwordText = (EditText) findViewById(R.id.password);
    login.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    handler.post(tThread);
    tThread.start();
    }
    });
    register.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
    /*
     * Intent intent = new Intent(); intent.setClass(Login.this,
     * Resgiter.class); Login.this.startActivity(intent);
     */
    handler.post(mThread);
    mThread.start();
    }
    });
    } private Thread mThread = new Thread(new Runnable() { @Override
    public void run() {
    // TODO Auto-generated method stub
    Intent intent = new Intent();
    intent.setClass(Login.this, Resgiter.class);
    Login.this.startActivity(intent);
    } });
    private Thread tThread = new Thread(new Runnable() {
    // class MyButtonListener implements OnClickListener {
    @Override
    public void run() {
    // TODO Auto-generated method stub User user = new User();
    boolean checked = false; username = idText.getText().toString();
    password = passwordText.getText().toString();
    user.setName(username);
    user.setPassword(password); // 创建一个DatabaseHelper对象
    DatabaseHelper dbHelper = new DatabaseHelper(Login.this);
    SQLiteDatabase db = dbHelper.getReadableDatabase();
    checked = UserWay.queryDatabase(user, db); if (checked) {
    finish();
    Toast.makeText(Login.this, "登陆成功!", Toast.LENGTH_SHORT).show();
    Intent intent = new Intent();
    intent.setClass(Login.this, MainActivity.class);
    Login.this.startActivity(intent);
    } else {
    finish();
    Toast.makeText(Login.this, "账号或密码错误,请重新登录!", Toast.LENGTH_SHORT)
    .show();
    Intent intent = new Intent();
    intent.setClass(Login.this, Login.class);
    Login.this.startActivity(intent);
    }
    db.close(); } });
    }还是没什么效果
      

  9.   


    图片最后一行是Login的log!就没有往下打印了,一直停在那
    你的login的acivity里面的onCreate方法作了耗时的操作引起了ANR有什么可行的解决方法
    你把耗时的操作放到thread里面去做,参考以下代码 HandlerThread hanThread = new HandlerThread("test");
    hanThread.start();
    Handler hander = new Handler(hanThread.getLooper());
    hander.post(new Runnable() {

    @Override
    public void run() {
    //do here

    }
    });package com.example.login;import android.app.Activity;
    import android.content.Intent;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.os.Handler;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.CheckBox;
    import android.widget.EditText;
    import android.widget.Toast;import com.example.pingziyi.MainActivity;
    import com.example.pingziyi.R;public class Login extends Activity {
    private Button register;
    private Button login;
    private EditText idText;
    private EditText passwordText;
    private String username;
    private String password;
    private CheckBox saveword; private android.os.Handler handler = new Handler(); protected void onCreated(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    System.out.println("this is login part");
    register = (Button) findViewById(R.id.regist);
    saveword = (CheckBox) findViewById(R.id.auto_save_password);
    login = (Button) findViewById(R.id.button1);
    idText = (EditText) findViewById(R.id.username);
    passwordText = (EditText) findViewById(R.id.password);
    login.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    new Thread(new tThread()).start();
    /*
    handler.post(tThread);
    tThread.start();
    */
    }
    });
    register.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
    /*
     * Intent intent = new Intent(); intent.setClass(Login.this,
     * Resgiter.class); Login.this.startActivity(intent);
     */
    new Thread(new mThread()).start();
    /*
    handler.post(mThread);
    mThread.start();
    */
    }
    });
    } class mThread implements Runnable { @Override
    public void run() {
    // TODO Auto-generated method stub
    Intent intent = new Intent();
    intent.setClass(Login.this, Resgiter.class);
    Login.this.startActivity(intent);
    } };

    class tThread implements Runnable{
    // class MyButtonListener implements OnClickListener {
    @Override
    public void run() {
    // TODO Auto-generated method stub User user = new User();
    boolean checked = false; username = idText.getText().toString();
    password = passwordText.getText().toString();
    user.setName(username);
    user.setPassword(password); // 创建一个DatabaseHelper对象
    DatabaseHelper dbHelper = new DatabaseHelper(Login.this);
    SQLiteDatabase db = dbHelper.getReadableDatabase();
    checked = UserWay.queryDatabase(user, db); if (checked) {
    finish();
    Toast.makeText(Login.this, "登陆成功!", Toast.LENGTH_SHORT).show();
    Intent intent = new Intent();
    intent.setClass(Login.this, MainActivity.class);
    Login.this.startActivity(intent);
    } else {
    finish();
    Toast.makeText(Login.this, "账号或密码错误,请重新登录!", Toast.LENGTH_SHORT)
    .show();
    Intent intent = new Intent();
    intent.setClass(Login.this, Login.class);
    Login.this.startActivity(intent);
    }
    db.close(); } }
    }
      

  10.   

    哦看错了 ,不好像不是ANR我试了下可以的啊,你先把确认是否可以跳转到loginActivity.
      

  11.   

    跳不了,只能运行SplashActivity,其他的就反应,打住了
      

  12.   

    login的这个Activity什么事都不做,只显示一个文字,看能不能显示,一点点排除就行了
      

  13.   

    还是不行,把所有的类(activity)都放到一个包了,每个activity都省到setContentView(R.id.xxx),
      

  14.   


    你的工程包名com.example.pingziyi
    你的Login和Register的包名是com.example.login,所以找不到的
    你将放到工程包的下面就可以了
      

  15.   

    别忘了同时修改AndroidManifest文件