первый вопрос и новичок в Android - надеюсь, это означает, что есть простое решение, которое я просто упустил - вот на что надеяться ... здесь.
Я использую пользовательский BaseExpandableListAdapter дляуправляя ExpandableListView и внутри адаптера, я переопределил метод GetChildView, чтобы отобразить пользовательский дочерний элемент с 5 кнопками.
public class ExpandableListAdapter extends BaseExpandableListAdapter {
private Context context;
private ArrayList<String> groups;
private ArrayList<ArrayList<String>> children;
private int setCount;
private int currentSetNumber;
...
public View getChildView(int groupPosition, int childPosition, boolean isLastChild,
View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater infalInflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = infalInflater.inflate(R.layout.child_layout, null);
parent.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
}
Button bPlus = (Button) convertView.findViewById(R.id.btnAddSet);
if(childPosition == 0){
Button bSetPlace = (Button) convertView.findViewById(R.id.bSetPlace1);
bSetPlace.setText("Set 1");
bSetPlace.setOnClickListener(new View.OnClickListener(){
***public void onClick(View v) {
// TODO Auto-generated method stub
Intent myIntent = new Intent(context,WeightEntryDialog.class);
context.startActivity(myIntent);
}***
});
... remainder of method (not relevant)
Никаких проблем с чем-либо пока нет, однако я застрял в методе onClick, помещенномна детской кнопке.То, что я хотел бы сделать, это получить результат от намерения (диалога), который я запускаю.В идеале, я бы назвал startActivityForResult, но из доступного контекста такого метода не существует.Я также ограничен областью действия анонимного класса.Диалоговое окно отображается, но я не могу получить от него никаких значений, кроме того, я не могу определить, когда диалоговое окно закрыто из-за отсутствия обратной связи.
Я хотел бы вернуть два целых числа издиалог.Не уверен, что какой-либо из диалоговых кодов уместен, но вот заголовок.
public class WeightEntryDialog extends Activity {
Я слишком далеко зашел в класс BaseExpandableListAdapter?Пытаюсь ли я сделать в адаптере что-то, что я действительно должен делать в другом месте, для меня важно сохранить контроль над дочерними элементами в расширяемом списке.Надеюсь, я ясен, и кто-то может предложить некоторые рекомендации.Спасибо большое.