반응형
어댑터에서 활동을 완료하는 방법 ..?
context
어댑터에 활동을 전달하려고 시도한 다음 시도했지만 다음 context.finish();
과 같은 오류가 발생했습니다.The method finish() is undefined for the type Context
활동으로 유형 캐스팅하십시오.
((Activity)context).finish();
다음 코드로 시도하십시오.
public YourAdapterName(......,Context context){
...
this.myContext=context;
}
그리고 어댑터에서 getView ()
btn.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
((YourActivityName)myContext).yourDesiredMethod();
}
});
활동을 activity
매개 변수 로 전달 하면이를 호출 할 수 finish()
있습니다. 도움이 되었기를 바랍니다.
이것에 대한 코드는 ((Activity)context).finish();
이고 완전한 코드는
holder.cardUsers.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent1=new Intent(mcontext,AstroChatPanel.class);
intent1.putExtra("mobile",userslist.get(position).getMobile());
intent1.putExtra("name",userslist.get(position).getName());
intent1.putExtra("type","admin");
mcontext.startActivity(intent1);
((Activity)mcontext).finish();
}
});
나는 그것을 사용하지 않았지만 그것이 효과가 있기를 바랍니다. 활동 내에서 다시로드하려면 "this.recreate ()"를 사용하십시오.
Adapter에서 다시로드하려면 "((Activity) context) .recreate ()"를 사용하십시오.
컨텍스트와 함께 활동 이름을 입력하고 활동을 완료
어댑터에서 작동합니다.
((Activity)view.getContext()).finish();
사용자 정의 어댑터에서 코드 아래에서 마침 사용을 호출하십시오.
((Activity)context).finish();
close Activity form Class Custom Adapter just in method
@Override
public void onClick(View v) {
MyApplication.value=mCompany.getCompanyId();
Intent intent = new Intent(MyApplication.context, VaasetActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("ID_COMPANY",mCompany.getCompanyId());
MyApplication.context.startActivity(intent);
((Activity)context).finish();
}
});
참조 URL : https://stackoverflow.com/questions/7951936/how-to-finish-an-activity-from-an-adapter
반응형
'programing' 카테고리의 다른 글
양식 요소에서 탭 포커스 비활성화 (0) | 2021.01.16 |
---|---|
for 루프에서 ++ i 또는 i ++ ?? (0) | 2021.01.16 |
툴팁에 브레이크 라인 추가 (0) | 2021.01.16 |
C #을 사용하는 두 자리 소수 (0) | 2021.01.16 |
사용자 지정 탐색 모음 스타일-iOS (0) | 2021.01.16 |