2011-01-11 80 views
0

我是Java Android开发人员的初学者。我正在使用Eclipse SDK 3.6.1版本。我试图做这件事:我有一个名为“login.xml”和其他“main.xml”的布局。我想首先加载“login.xml”,输入登录名,然后如果登录名正确加载“main.xml”。如何连接两个布局java android?

public class simpleprogram extends Activity { 


/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.login); 

} 

如何正确调用main.xml?

回答

0

当然你也可以在提交后设置一个新的contentview?

public class simpleprogram extends Activity { 


/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    if(checkForLoggedIn()){ 
     setContentView(R.layout.main); 
    }else{ 
     setContentView(R.layout.login); 
    } 

} 

或者做一个onClick

2

你并不需要改变布局类似的东西。您应该使用内容视图== R.layout.main创建一个单独的活动(类似于您对simpleprogram活动的处理方式),并在成功登录时启动活动。

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.login); 
    Button loginBtn = (Button) findViewById(R.id.loginBtn); 
    loginBtn.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
     // check that login is correct 
     // if so... 
     Intent intent = new Intent(simpleprogram.this, SecondActivity.class); 
     startActivity(intent); 
     } 
    } 
} 

请参阅原始版本开发人员guide

0

你必须键入:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.login); 
    Button loginBtn = (Button) findViewById(R.id.loginBtn); 
    loginBtn.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
    // check that login is correct 
@Override 
    public void onClick(View args0) { 
    setContentView(R.layout.main); 
} 
    } 
} 
}