#java #android
#java #Android
Вопрос:
С помощью приведенного ниже кода я получаю эту ошибку:
ошибка:’;’ ожидаемый DialogFragment.show((Activity) _context).getSupportFragmentManager(), «Диалог»));
@Override
public View getChildView(int groupPosition, final int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
final String childText = (String) getChild(groupPosition, childPosition);
if (convertView == null) {
LayoutInflater infalInflater = (LayoutInflater) this._context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = infalInflater.inflate(R.layout.list_item, null);
}
TextView txtListChild = (TextView) convertView.findViewById(R.id.lblListItem);
Button btnListChild = (Button) convertView.findViewById(R.id.btn);
btnListChild.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
CustomDialogClass dialogFragment = new CustomDialogClass();
dialogFragment.show((Activity) _context).getSupportFragmentManager(), "Dialog"));
}
});
txtListChild.setText(childText);
return convertView;
}
Комментарии:
1. Что вам действительно нужно, так это передать диспетчер фрагментов в качестве первого параметра метода show, а второй — строку тега. Итак, чтобы использовать диспетчер фрагментов, вы должны сделать это..
((Activity) _context).getSupportFragmentManager()
и все, что вам не хватает, это несколько правильных закрывающих фигурных скобок.2. @JeelVankhede хорошо, я отредактировал его, теперь эта ошибка: ‘;’ ожидаемый DialogFragment.show((Activity) _context).getSupportFragmentManager(), «Диалог»);
3. Нет, это все еще неправильный синтаксис, используйте это:
dialogFragment.show(((Activity) _context).getSupportFragmentManager(), "Dialog");
4. все еще получаю ошибки.
Ответ №1:
Измените DialogFragment.show((Activity) _context).getSupportFragmentManager(), «Диалог»)); на DialogFragment.show((Activity) _context.getSupportFragmentManager(), «Диалог»);
Комментарии:
1. ` ошибка: не удается найти символ DialogFragment.show((Activity) _context.getSupportFragmentManager(), «Диалог»); ^ символ: метод getSupportFragmentManager() местоположение: переменная _context типа Context `
2. Используете ли вы тему AppCompat? Если это приведет _context к AppCompatActivity