-1

Когда я открываю действие, ящик навигации не появляется. Так можно ли каким-либо образом добавить список и панель действий в одну активность? Был бы признателен, если бы кто-нибудь мог мне помочь. СпасибоЛюбой способ добавить панель действий и список в одну активность?

public class Cart extends ListActivity { 

ArrayAdapter<String> mAdapter; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.cart); 


    String[] items = new String[2]; 
    items[0] = ""; 


    mAdapter = new ArrayAdapter<String>(this, 
      android.R.layout.simple_list_item_1, 
      android.R.id.text1, 
      new ArrayList<String>(Arrays.asList(items))); 
    setListAdapter(mAdapter); 

    ListView listView = getListView(); 

    SwipeDismissListViewTouchListener touchListener = 
      new SwipeDismissListViewTouchListener(
        listView, 
        new SwipeDismissListViewTouchListener.DismissCallbacks() { 
         @Override 
         public boolean canDismiss(int position) { 
          return true; 
         } 

         @Override 
         public void onDismiss(ListView listView, int[] reverseSortedPositions) { 
          for (int position : reverseSortedPositions) { 
           mAdapter.remove(mAdapter.getItem(position)); 
          } 
          mAdapter.notifyDataSetChanged(); 
         } 
        }); 
    listView.setOnTouchListener(touchListener);// ListView scrolling, 

} 
+1

Используется 'ListView' и ваша деятельность' расширяет ActionBarActivity' –

ответ

8

Просто поместите ListView внутри ActionBarActivity

public class someActivity extends ActionBarActivity { 

    ListView listView; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 

     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_some); 

     listView = (ListView) findViewById(R.id.listView); 
     YourAdapter listAdapter = new YourAdapter(); 
     listView.setAdapter(listAdapter); 
    } 
} 

Xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ListView 
    android:id="@+id/listView" 
    android:layout_height="match_parent" 
    android:layout_width="match_parent"/> 

</LinearLayout> 
+0

Извините .. но когда я изменить его есть некоторая ошибка setListAdapter (mAdapter); ListView listView = getListView(); и нет ActionBarActivity .. это потому, что я использую андроид-студию? жаль снова не знакомы с андроидом, все еще учась на нем –

+0

@VincentWeiSheng ive добавил адаптер к моему ответу. Что касается других ваших запросов, в действии панели действий нет методов setListAdapter или getListView, это должно быть сделано, как я показал. Не знаете, почему ваш код не распознает ActionBarActivity, но он не имеет ничего общего с андроидной студией. –

+0

Спасибо большое .. мне удастся это решить уже .. –

1

Благодаря Джо !! Мне просто нужно было войти в систему и дать этому ответу большие пальцы. Решила мою проблему. Лучше ответить, чем любой я посмотрел за последние несколько дней :)

Вот мой кусок кода, как я ее решил

Использование AppCompatActivity, как кажется ActionBarActivity быть устаревшим.

public class SelectActivity extends AppCompatActivity /*ListActivity*/ implements OnClickListener { 

ListView listView; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.select_clothes); 

    listView = (ListView) findViewById(R.id.listView); 

    mList = getListData(); 
    MyAdapter listAdapter = new MyAdapter(this, R.layout.row, mList); 
    listView.setAdapter(listAdapter); 
} 
Смежные вопросы