UpdateActivity.java:
public class UpdateActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityUpdateBinding dataBinding = DataBindingUtil.setContentView(this, R.layout.activity_update);
}
interface Listener {
void onClick(View v);
}
}
activity_update.xml:
<data>
<variable
name="listener"
type="com.kycq.reader.UpdateActivity$Listener"/>
</data>
如果我设置“监听器”,它总是错误。这意味着我无法设置内部类,或者我应该以其他方式设置“监听器”?
最佳答案
只要将内部类声明为 public,您就可以使用 Android 的数据绑定(bind)库访问内部类。通过确保内部类是公共(public)的,我能够使用它。使用 com.kycq.reader.UpdateActivity.Listener
来访问内部类,而不是使用 com.kycq.reader.UpdateActivity$Listener
。
关于java - Android DataBinding可以使用内部类吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36894435/