2011-01-11 79 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); 
} 
    } 
} 
}