2014-12-23 119 views
2

我正在使用sherlock操作欄的android應用程序。我想在用戶點擊它時以編程方式更改操作欄上的文本。當用戶點擊textView時,我在編輯文本中使用了:editText.setText("Save");。我想這樣做在運行時,當我在操作欄文本點擊它應改爲「拯救」我的行動條碼下面給出:如何以編程方式在操作欄上設置文本

enter image description here

<menu xmlns:android="http://schemas.android.com/apk/res/android" > 

    <item 
     android:id="@+id/editTxt" 
     android:showAsAction="always|collapseActionView" 
     android:title="Edit"/> 

</menu> 

@Override 
     public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) { 
      MenuInflater inflater = getSupportMenuInflater(); 
      inflater.inflate(R.menu.main, menu); 
      return true; 
     } 


     @Override 
     public boolean onOptionsItemSelected(
       com.actionbarsherlock.view.MenuItem item) { 
      switch (item.getItemId()) { 

      case R.id.editTxt: 
       return true; 

      default: 
       finish(); 
      return super.onOptionsItemSelected(item); 
     } 
     } 
+1

檢查這個問題,http://stackoverflow.com/questions/13059580/editing-text-in-action-bar –

回答

4

更改ActionBar冠軍

如果你運行的API> = 11,則:

getActionBar().setTitle("Hello"); 

或者,用API < 11:

getSupportActionBar().setTitle("Hello"); 

要更改ActionBar的文本。

編輯:在點擊菜單項更改文本

@Override 
public boolean onOptionsItemSelected(com.actionbarsherlock.view.MenuItem item) { 
    switch (item.getItemId()) { 
     case R.id.editTxt: 
      item.setTitle("Hello"); 
      return true; 

    ...... 
+0

感謝您的回覆。請看我編輯的問題。我只想更改操作欄上字段的文本名稱。我不想改變標題。我正在使用Sherlock actionbar –

+1

它似乎是一個動作按鈕,不是嗎? – Rogue

+0

是的。它是一個動作按鈕。請也請指導我如何更改動作按鈕的顏色。感謝和讚賞 –

相關問題