2013-04-12 53 views
0

我有一個應用程序有一個微調,並決定把一個「微調」到一個ActionBar,所以我用ActionBarSherlock的ListNavigation,當我點擊它,列表顯示,但當我點擊一件物品什麼都沒有發生。ListNavigation ActionBar不工作

我應該將ListNavigation鏈接到ArrayAdapter嗎?

謝謝。

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    display = ((WindowManager) this 
      .getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); 

    setContentView(R.layout.map); 

    findViewById(R.id.minus).setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      mapController.zoomOut(); 
     } 
    }); 

    findViewById(R.id.help).setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      openOptionsMenu(); 
     } 
    }); 
    prefs = PreferenceManager.getDefaultSharedPreferences(this); 
    editor = prefs.edit(); 

    Log.d(tag, "onCreate"); 
    timer = new Timer(true); 

    // spinner = (Spinner) findViewById(R.id.spinner); 
    adapter = NoScrollArrayAdater.createFromResource(this, 
      R.array.cityNames, R.layout.sherlock_spinner_item); 
    adapter.setDropDownViewResource(R.layout.sherlock_spinner_dropdown_item); 
    // spinner.setAdapter(adapter); 

    mSelected = getResources().getStringArray(R.array.cityValues); 
    mLocations = getResources().getStringArray(R.array.cityNames); 

    getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); 
    getSupportActionBar().setListNavigationCallbacks(adapter, this); 
@Override 
public boolean onNavigationItemSelected(int itemPosition, long itemId) { 
    mSelected("Selected: " + mLocations[itemPosition]); 
    return true; 

回答

0

您應該閱讀Android Developers文檔中的ActionBar: Adding Dropdown Navigation文檔。

您需要使用actionBar.setListNavigationCallbacks() 設置導航回調,並且您需要實施ActionBar.OnNavigationListener

該方法與ActionBarSherlock的支持庫ActionBar相同。

編輯:

我不知道什麼是怎麼回事你NoScrollArrayAdater爲什麼你叫setDropDownViewResource(),但是當我測試你的代碼,並替換成一切正常:

SpinnerAdapter adapter = ArrayAdapter.createFromResource(this, R.array.locations, 
        android.R.layout.simple_spinner_dropdown_item); 
+0

好我已經完成了所有這些,但沒有運氣。 – MobiusApps

+0

你可以發佈你的代碼大綱嗎? –

+0

我已添加代碼。 – MobiusApps

相關問題