Допустим, у меня есть эта кнопка:
<Button
android:id="@+id/idone"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="D2"
android:onClick="myMeth"/>
Я несколько раз использовал это для вызова методов из макета xml, поскольку он вызывает метод из действия, которое раздувает такое представление.
В последнее время с DialogFragments ну вообще не работает. Я продолжаю получать сообщение об ошибке, говорящее мне, что такого метода не существует. Где он тогда ищет такой метод? Я добавил его в класс DialogFragment:
public class myActivity extends DialogFragment {
public DiceDialog() {
// empty constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.myDialog, container);
getDialog().setTitle("Hello");
return view;
}
public void myMeth(View view) {
//...
}
А также в действии, которое создает экземпляр FragmentManager и вызывает диалог:
public Class MainActiviry Extends FragmentActivity {
//...
public void onCreate(Bundle savedInstanceState) {
// ..
FragmentManager fm = getSupportFragmentManager();
MyActivity dialog = new AddDiceDialog();
dialog.show(fm, "tag");
}
public void myMeth(View view){
//...
}
И все равно мессаг в том, что MyMeth не найден.
Я уже прочитал, что использование интерфейсов и прослушивателей – правильный способ общения между фрагменты активности и диалога, но то, что я пытаюсь выяснить здесь, это то, где делается этот вызов myMeth, потому что он вызывается.