我是Android新手。我試圖編寫一個if語句的方法。我試圖發生的是「如果Textview中的文本等於某個值,則更改佈局中的背景圖像」。我知道設置背景位的作品,我已經把問題縮小到了If語句。在下面的代碼中,showBook是一個TextView,tvString是保存showBook的值的字符串。 bgview是佈局ID。在Android中寫「if」語句
String tvString = showBook.getText().toString();
bookDisp.setText(tvString);
View mainbg = bgview.getRootView();
if(bookDisp.equals("John")){
mainbg.setBackgroundResource(R.drawable.dbvjohn);
的問題是它不希望與字符串 「約翰」 來比較bookDisp行
if(bookDisp.equals("John")){
。然而,如果我比較兩個textviews,例如
if(bookDisp.equals(newTextView)){
因此我認爲問題是.equals位。我會用什麼代碼來比較bookDisp和「John」?它不是if(bookDisp = ("John")){
,因爲Eclipse希望我將bookDisp更改爲字符串。那麼將textview bookDisp與字符串「John」進行比較的正確代碼是什麼?
別介意別人!我明白了,這個錯誤並不在這個方法中,而是在另一個方法中。我在該方法中使用了+ cursor.getString(1) + " ";
,所以textviews中的字符串顯示爲「John」,上面的「if」語句正在查找「John」。
實際上沒有理由把常量放在這裏,因爲你不會從函數中得到任何'null'結果。但仍然是很好的做法。 :) – vhallac 2012-04-12 17:25:50