я пытался что-то код (мир никогда не будет знать, что: D), и когда им пытаются обновить ListView я просто получаю сообщение об ошибке ....косяк обновление ListView (андроид)
код в теории: " когда я нажимаю на элемент в NavDrawer окне списка должны получить заполнены конкретными данными»
кода в реальности:
public class MainActivity extends AppCompatActivity {
ArrayAdapter<String> adapter;
String[] values;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListView listview = (ListView) findViewById(R.id.listview);
values = new String[]{"Android", "iPhone", "WindowsMobile",
"Blackberry", "WebOS", "Ubuntu", "Windows7"};
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, values);
listview.setAdapter(adapter);
}
public void update(){
adapter.clear();
adapter.notifyDataSetChanged();
}
, что метод вызывается из этого метода, который exsists в NavDrawerFragment.java
@Override
public void itemClicked(View view, int position) {
Toast.makeText(getActivity(), "shit is going down", Toast.LENGTH_LONG).show();
new MainActivity().update();
}
Я предполагаю, что это происходит из-за того, что я создаю новый объект, но я просто (в середине ввода сообщения) передал адаптер как параметр метода (и может ввести его в качестве сеттера) и в методе itemClicked, который я напечатал adapter.clear() и такое же дерьмо случилось
Хорошо, я изменил значения varible с помощью метода установки
public void setValues(String[] values) {
this.values = values;
adapter.notifyDataSetChanged();
}
я назвал его как то из recyclerview (который существует в ящике) адаптера String values[] = {"lel", "uja"}; mainActivity.setValues(values);
такой же крах, maybile som1 хотел бы получить вызов skype? я обещаю, я не буду раздражать
Видимо, я создавал другой объект после того, как все:
MainActivity mainActivity = new MainActivity();
Я задавался вопросом, почему я могу получить доступ к этому методу, как это:
mainActivity.setValues(values);
Так вероятно, я спрашиваю: как получить доступ к методу без создания активности?
Вы вызвали экземпляр нового основного вида деятельности? почему –
Я пытался получить доступ к методу (update()), сегодня я переделал код, я надеялся найти ошибку, и я хотел что-то изменить, прежде чем я не стал создавать экземпляр MainActivity, я забыл, как я (честно говоря, я не думал о том, как получить доступ к методу, когда я его переделывал так пробоподобно, поэтому я его назвал), но в середине ввода сообщения я подумал, что я должен просто попытаться получить доступ к форме адаптера класса antother (метод itemClicked) но такое же shit happend – Zombie