2017-02-02 3 views
0

Я очень новичок в android. Я делаю просмотр списка, и каждый раз, когда я нажимаю на элемент списка, он отображает второй вид списка, но все элементы во втором представлении списка не доступны для просмотра , Я пробовал все решения, чтобы сделать элементы во втором списке кликабельными, но не для них работали для меня. Вот мой код до сих пор:Новый элемент списка View Items not Clickable

Основная деятельность:

public class MainActivity extends AppCompatActivity { 
    String[] boundryitems = {"Boundry Wall","Front Elevation","Corridor","Kitchen","Bedroom1"}; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 


     //Boundry List Adapter 

     final ArrayAdapter boundry_Item1 = new ArrayAdapter<String>(this, 
       R.layout.activity_main,R.id.texti, boundryitems); 
     ListView listView11 = (ListView) findViewById(R.id.listvi); 
     listView11.setAdapter(boundry_Item1); 


     listView11.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      public void onItemClick(AdapterView<?> parent, View view, 
            int position, long id) { 
       if (position == 0) { 

        Intent myIntent = new Intent(view.getContext(), item1.class); 

        startActivityForResult(myIntent, 0); 

       } 
       if (position == 1) { 
        Intent myIntent = new Intent(view.getContext(), item1.class); 
        startActivityForResult(myIntent, 0); 

       } 

       if (position == 2) { 
        Intent myIntent = new Intent(view.getContext(), item1.class); 
        startActivityForResult(myIntent, 0); 
       } 

       if (position == 3) { 
        Intent myIntent = new Intent(view.getContext(), item1.class); 
        startActivityForResult(myIntent, 0); 
       } 

       if (position == 4) { 
        Intent myIntent = new Intent(view.getContext(), item1.class); 
        startActivityForResult(myIntent, 0); 
       } 

       if (position == 5) { 
        Intent myIntent = new Intent(view.getContext(), item1.class); 
        startActivityForResult(myIntent, 0); 
       } 

       if (position == 6) { 
        Intent myIntent = new Intent(view.getContext(), item1.class); 
        startActivityForResult(myIntent, 0); 
       } 

       if (position == 7) { 
        Intent myIntent = new Intent(view.getContext(), item1.class); 
         startActivityForResult(myIntent, 0); 
        } 
       } 
      }); 
     } 
    } 

пункт 1 (С содержит второй Listview):

public class item1 extends Activity { 

     String[] snaglistciv = {"Paint","Garbage Room","Pump Room","Lights","Joint"}; 
     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.snag_item); 

    //Snag List Adapter 

      final ArrayAdapter adapterSnag_Item = new ArrayAdapter<String>(this, 
        R.layout.snag_item,R.id.textsnag, snaglistciv); 

      final ListView listView = (ListView) findViewById(R.id.listsnag); 
      listView.setAdapter(adapterSnag_Item); 



      listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
       public void onItemClick(AdapterView<?> parent, View view, 
             int position, long id) { 
        if (position == 0) { 


         Intent myIntent = new Intent(view.getContext(), camerapic.class); 

         startActivityForResult(myIntent, 0); 

        } 
        if (position == 1) { 
         Intent myIntent = new Intent(view.getContext(), camerapic.class); 
         startActivityForResult(myIntent, 0); 

        } 

        if (position == 2) { 
         Intent myIntent = new Intent(view.getContext(), camerapic.class); 
         startActivityForResult(myIntent, 0); 
        } 

        if (position == 3) { 
         Intent myIntent = new Intent(view.getContext(), camerapic.class); 
         startActivityForResult(myIntent, 0); 
        } 

        if (position == 4) { 
         Intent myIntent = new Intent(view.getContext(), camerapic.class); 
         startActivityForResult(myIntent, 0); 
        } 

        if (position == 5) { 
         Intent myIntent = new Intent(view.getContext(), item1.class); 
         startActivityForResult(myIntent, 0); 
        } 

        if (position == 6) { 
         Intent myIntent = new Intent(view.getContext(), item1.class); 
         startActivityForResult(myIntent, 0); 
        } 

        if (position == 7) { 
         Intent myIntent = new Intent(view.getContext(), item1.class); 
         startActivityForResult(myIntent, 0); 
        } 
       } 
      }); 
     } 
    } 
+2

Первое, если вы новичок в 'Android', привыкаете использовать' recyclerView'. – Wizard

+0

Есть ли какой-либо ImageButton или Button в адаптере? –

+0

Запуск такой же активности при нажатии элементов ListView. то зачем использовать if-else? –

ответ

0

Ваша деятельность в contentView и просматривать элемент управления ListView такие же ?? ? R.layout.snag_item

 setContentView(R.layout.snag_item); 

     final ArrayAdapter adapterSnag_Item = new ArrayAdapter<String>(this, 
       R.layout.snag_item,R.id.textsnag, snaglistciv);