gpt4 book ai didi

android - 从 Android 中的扩展 View 类调用 Activity 方法

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:00:05 26 4
gpt4 key购买 nike

这是我在设计应用程序结构时没有预见到的问题。

基本上我有 3 个类。

ProfileActivity //The main activity for the application.
ProfileView //Which extends Linear Layout so that I can tinker with my own view. Note that this is just part of the whole activity and not the main layout
ProfileData //This is just a class for storing data.

Activity 包含多个 ProfileView,每个 ProfileView 包含一个 profileData。

这是我卡住的地方。我的个人资料 View 分配了一个点击方法,需要在 Activity 中调用填充方法。不幸的是````

//I'm inside the activity
public void populateProfileDataForm(ProfileData pd)
{
//edit some text fields and other widgets from here
}

有什么方法可以从 profileView 类中调用 Activity 方法吗?

如果不是,那么错误出在我的设计中,任何人都可以指出一个更好的绑定(bind)数据、 View 和 Activity 的解决方案吗?

最佳答案

当您创建一个 View 时,您总是需要一个上下文,并且总是将一个 Activity 传递给它。所以尝试使用下面的代码:

If(m_context instanceof ProfileActivity)
{
ProfileActivity activity = (ProfileActivity)m_context;
// Then call the method in the activity.
}

或者写一个接口(interface)onProfileViewClickListener比如view.onclickListener。然后 ProfileActivity 实现它并将其设置为 ProfileView。

关于android - 从 Android 中的扩展 View 类调用 Activity 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9889618/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com