【发布时间】:2019-06-14 10:15:34
【问题描述】:
我想扫描片段中的二维码。
但是 onActivityResult 没有调用。
Fragment.java
@Override
public View onCreateView(LayoutInflater inflater ,ViewGroup container ,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate( R.layout.fragment_offer ,container ,false );
scanOffer = view.findViewById( R.id.scanOffer );
scanOffer.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View view) {
scanBarcode();
}
} );
return view;
}
public void scanBarcode() {
/** This method will listen the button clicked passed form the fragment **/
Intent intent = new Intent(getContext(),CaptureActivity.class);
intent.setAction("com.google.zxing.client.android.SCAN");
intent.putExtra("SAVE_HISTORY", false);
startActivityForResult(intent, 0);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 0) {
if (resultCode == Activity.RESULT_OK) {
uniqueCode = data.getStringExtra("SCAN_RESULT");
Log.d(TAG, "contents: " + uniqueCode);
Toast.makeText( getContext() ,uniqueCode ,Toast.LENGTH_SHORT ).show();
// callAddStoreContestParticipantService();
} else if (resultCode == Activity.RESULT_CANCELED) {
Log.d(TAG, "RESULT_CANCELED");
}
}
}
请帮帮我。
onActivityResult() 没有调用
CaptureActivity.class扫描后打开Qr onActivityResult()没有调用
【问题讨论】:
-
CaptureActivity 是您的活动吗?
-
不,这不是我的活动。我使用实现 'com.daimajia.slider:library:1.1.5@aar' 来扫描二维码..
-
com.daimajia.slider:library:1.1.5@aar是扫二维码的吗? -
请确认在你的fragment的activity onActivityResult()方法中获取回调并跟踪响应,这样你就可以放心进入Activity的回调而不是Fragment的调用。
-
@UnnatiPatadia 请试试我的解决方案
标签: android android-fragments fragment android-camera onactivityresult