এই এক আমার তুলবেন হয়েছে।
কাস্টম বিন্যাস শ্রেণীর মধ্যে থেকে আমাকে একটি ক্রিয়াকলাপ পদ্ধতি কল করতে হবে। এটির সাথে সমস্যাটি হ'ল লেআউটটির মধ্য থেকে কীভাবে কার্যকলাপটি অ্যাক্সেস করতে হয় তা আমি জানি না।
ProfileView
public class ProfileView extends LinearLayout
{
TextView profileTitleTextView;
ImageView profileScreenImageButton;
boolean isEmpty;
ProfileData data;
String name;
public ProfileView(Context context, AttributeSet attrs, String name, final ProfileData profileData)
{
super(context, attrs);
......
......
}
//Heres where things get complicated
public void onClick(View v)
{
//Need to get the parent activity and call its method.
ProfileActivity x = (ProfileActivity) context;
x.activityMethod();
}
}
ProfileActivity
public class ProfileActivityActivity extends Activity
{
//In here I am creating multiple ProfileViews and adding them to the activity dynamically.
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.profile_activity_main);
}
public void addProfilesToThisView()
{
ProfileData tempPd = new tempPd(.....)
Context actvitiyContext = this.getApplicationContext();
//Profile view needs context, null, name and a profileData
ProfileView pv = new ProfileView(actvitiyContext, null, temp, tempPd);
profileLayout.addView(pv);
}
}
আপনি উপরের দেখতে পাচ্ছেন, আমি প্রোফাইল ভিউটিকে প্রোগ্রামটিমেটিকভাবে ইনস্ট্যান্ট করছি এবং এটির সাথে ক্রিয়াকলাপে প্রেরণ করছি। 2 টি প্রশ্ন:
- আমি কি প্রোফাইল ভিউতে সঠিক প্রসঙ্গটি পার করছি?
- আমি কীভাবে প্রাসঙ্গিক থেকে ক্রিয়াকলাপটি পেতে পারি?