2012-02-22 42 views
-1

我正在寫一個程序,當用戶輸入一個數字文本出現時,根據該數字。我的問題是,按鈕線有公共無效...在此之後,我試圖使用if語句和返回方法,但由於公共無效,返回方法不能返回任何東西。我試圖關閉公共無效,但我得到錯誤。請幫忙。代碼如下: 代碼如下。我已經包括我試圖像烤麪包等的不同代碼..使用一個按鈕,然後顯示動態文本

[email protected] 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    Button button = (Button)findViewById(R.id.go); 
    button.setOnClickListener(mAddListener); 

// tv = (TextView) findViewById(R.id.textView1); 
} 

private OnClickListener mAddListener = new OnClickListener() 
{ 
    public void onClick(View v) { 
     }} 
    ; 
     //Toast.makeText(Num.this, "This Display", Toast.LENGTH_SHORT).show(); 
     //toast.show(); 
     //finish(); 
    // long id = 0; 

//嘗試 { PleaseEnter =(的EditText)findViewById(R.id.PleaseEnter);

{ 
    } 

    if (PleaseEnter.equals("1")) 
    // tv.setText("This is the display 1."); 
     return "This display"; 

    // Context context = getApplicationContext(); 
    // CharSequence text ="this display"; 
// int duration =Toast.LENGTH_LONG; 
// Toast toast =Toast.makeText(context, text, duration); 
    // toast.show(); 
else if (PleaseEnter.equals("2")) 
    return; 
    //tv.setText("Dispaly 2"); 
+0

爲什麼不你保存在按鈕點擊一些字符串中的文本並使用它?你爲什麼要這個函數返回? – 2012-02-22 17:10:11

+0

你爲什麼要退貨?您可以將文本設置爲所需的組件。 我看到你已經試過在這裏做 - tv.setText(「這是顯示器1」); 它不工作? – reederz 2012-02-22 17:15:39

+0

@Seshu,你的意思與Justas tv.setText一樣,沒有奏效。 – Pra 2012-02-22 18:02:23

回答

0

您可以在活動水平定義自己的方法,如:

private void onTextEdited(String content) { 
    // deal with the String 
} 

在你OnClickListeneronClick方法,你可以調用它,如:

public void onClick(View v) { 
    EditText myEditText = (EditText) findViewById(R.id.PleaseEnter); 
    onTextEdited(myEditText.getText().toString()); 
} 
+0

我試圖按照你寫的,但我不知道在哪裏把第一行,或取什麼取代第一行 private void onTextEdited(String content) – Pra 2012-02-22 18:38:23

+0

你可以寫活動級別的第一種方法。然後,在這種方法中,您可以顯示您想要的Toast,或者在TextView中設置特定的文本等。 – 2012-02-27 16:52:04

相關問題