<分区>
Possible Duplicate:
How to Define Callbacks in Android?
我在网上阅读了有关回调的内容,我了解到这在 Android 生态系统中具有重要的意义。
谁能说出一个例子并解释回调是什么,它们是如何工作的?
<分区>
Possible Duplicate:
How to Define Callbacks in Android?
我在网上阅读了有关回调的内容,我了解到这在 Android 生态系统中具有重要的意义。
谁能说出一个例子并解释回调是什么,它们是如何工作的?
最佳答案
你的意思是回调使用接口(interface)? 如果是,这里有一个例子
这是回调菜单.java
package com.example.test.callback;
public interface CallbackCalendar {
public void onClick();
}
这是一个你如何实现它的例子
public class CallbackCell implements CallbackCalendar{
@Override
public void onClick() {
Log.i("TAG", "IT WORKS!);
addChild(2);
}
}
这是一个允许您从另一个 View 访问一个 View 的示例 就像我在日历库中使用的一样,我创建了 3 个 View 类,日历 View 、日历行、日历单元格
通过将此回调从日历 View 传递到日历单元格,我们可以在日历单元格的日历 View 中添加 View 、设置值或任何其他内容(日历单元格是日历行的一部分,日历行是日历 View 的一部分)在这个例子中,我试图设置每当用户点击我们将在日历 View (主视图)中添加另一个 View 的单元格
这是在日历单元格中使用回调的例子
public CalendarCell(Context context,int day,final CallbackCalendar callback)
{
super(context);
final int temp = day;
this.context = context;
this.setBackgroundColor(Color.parseColor("#FFFFFFFF"));
LinearLayout.LayoutParams lpCalendarCell = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
lpCalendarCell.weight = 1;
this.setLayoutParams(lpCalendarCell);
this.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
callback.onClick();
}
});
addContainer(day);
}
所以我在日历 View 中设置回调并将其传递给日历行,然后再次传递给日历单元格并在日历单元格中调用 onClick
我想就这些了,如果您有任何问题,请随时在评论中写下:)
关于android - 什么是回调以及如何在 Android 中实现它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13062033/