2014-12-04 32 views
0

我對android編程完全陌生,因此請隨身攜帶。 作爲組合項目的一部分,我們預計在我們的應用程序中使用對象類。我創建了一個名爲User的類和一個設置用戶名的構造函數。從Android的EditText字段設置對象值

爲了獲得userName,我使用了一個EditText字段。但是,我現在堅持如何將editText的值傳遞給對象類中的參數。請問你們有沒有提供任何協助?

回答

3
EditText yourEditText = (EditText)findViewById(R.id.your_edittext_id_set_in_xml_layout); 
String userName = yourEditText.getText().toString(); 
YourClass yourClassObj = new YourClass(userName); 
0

String str = editText.getText()。toString();

0

你可以叫你的構造一些按鈕內爲

Constructor(Edittextname.getText()); 
0

良好做法是建立一個構造函數和getter和setter方法的對象,這裏有一個簡單的例子:

public class User { 

    private String username; 

    //Constructor 
    public User(String username) { 
     this.username = username; 
    } 

    //Set username after instantiate 
    public void setUsername(String username) { 
     this.username = username; 
    } 

    public String getUsername() { 
     return username; 
    } 
} 

早在你的活動或片段,然後你會做這樣的事情來設置你的對象與editText的值:

//Note this is a reference to the edittext object, not the text contents. 
EditText myedittext = (EditText) getView().findViewById(R.id.theedittext); 

//create user object 
User myuser = new User(); 
//Set username from text inside edittext 
myuser.setUsername(myedittext.getText().toString()); 

或者,你可以用你的構造像這樣:

User myuser = new User(myedittext.getText().toString()); 

這是一個簡單的例子,你應該檢查空值,並做一些其他驗證,但希望這回答了你的問題。 使用getter和setter可以讓您在實例化後更自由地操作對象。

希望是有道理的。祝你好運。

相關問題