正在查看: 微商客 v2.1.2 应用的 PickerAlbumActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 微商客 v2.1.2 应用的 PickerAlbumActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.qiyukf.uikit.common.media.picker.activity;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Configuration;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.qiyukf.module.log.UnicornLog;
import com.qiyukf.uikit.common.activity.BaseFragmentActivity;
import com.qiyukf.uikit.common.media.picker.a.b;
import com.qiyukf.uikit.common.media.picker.fragment.PickerAlbumFragment;
import com.qiyukf.uikit.common.media.picker.fragment.PickerImageFragment;
import com.qiyukf.uikit.common.media.picker.model.PhotoInfo;
import com.qiyukf.unicorn.R;
import com.qiyukf.unicorn.api.UICustomization;
import com.qiyukf.unicorn.c;
import com.qiyukf.unicorn.m.a;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class PickerAlbumActivity extends BaseFragmentActivity implements View.OnClickListener, PickerAlbumFragment.OnAlbumItemClickListener, PickerImageFragment.OnPhotoSelectClickListener {
private static final String TAG = "PickerAlbumActivity";
private boolean isAlbumPage;
private boolean isMultiMode;
private boolean isSendOriginalImage;
private boolean isSupportOriginal;
private int multiSelectLimitSize;
private PickerAlbumFragment photoFolderFragment;
private PickerImageFragment photoFragment;
private FrameLayout pickerAlbumLayout;
private FrameLayout pickerPhotosLayout;
private TextView pickerPreview;
private TextView pickerSend;
private List<PhotoInfo> hasSelectList = new ArrayList();
private int orientation = 1;
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(R.layout.ysf_picker_album_activity);
proceedExtra();
initUI();
setTitle(R.string.ysf_picker_image_folder);
}
private void proceedExtra() {
Intent intent = getIntent();
if (intent != null) {
this.isMultiMode = intent.getBooleanExtra("multi_select_mode", false);
this.multiSelectLimitSize = intent.getIntExtra("multi_select_size_limit", 9);
this.isSupportOriginal = intent.getBooleanExtra("support_original", false);
}
}
private void initUI() {
RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.id.picker_bottombar);
if (this.isMultiMode) {
relativeLayout.setVisibility(0);
} else {
relativeLayout.setVisibility(8);
}
TextView textView = (TextView) findViewById(R.id.picker_bottombar_preview);
this.pickerPreview = textView;
textView.setOnClickListener(this);
TextView textView2 = (TextView) findViewById(R.id.picker_bottombar_select);
this.pickerSend = textView2;
textView2.setOnClickListener(this);
this.pickerAlbumLayout = (FrameLayout) findViewById(R.id.picker_album_fragment);
this.pickerPhotosLayout = (FrameLayout) findViewById(R.id.picker_photos_fragment);
this.photoFolderFragment = new PickerAlbumFragment();
replaceFragment(R.id.picker_album_fragment, this.photoFolderFragment);
this.isAlbumPage = true;
if (a.a().d()) {
this.pickerPreview.setTextColor(Color.parseColor(a.a().c().h()));
return;
}
try {
UICustomization uICustomization = c.g().uiCustomization;
if (uICustomization == null || uICustomization.buttonBackgroundColorList <= 0) {
return;
}
this.pickerPreview.setTextColor(getResources().getColorStateList(uICustomization.buttonBackgroundColorList));
} catch (Exception e) {
UnicornLog.e(TAG, "ui customization error: ", e);
}
}
@Override
public void onAlbumItemClick(com.qiyukf.uikit.common.media.picker.model.a aVar) {
List<PhotoInfo> e = aVar.e();
if (e == null) {
return;
}
for (PhotoInfo photoInfo : e) {
if (checkSelectPhoto(photoInfo)) {
photoInfo.setChoose(true);
} else {
photoInfo.setChoose(false);
}
}
this.pickerAlbumLayout.setVisibility(8);
this.pickerPhotosLayout.setVisibility(0);
if (this.photoFragment == null) {
this.photoFragment = new PickerImageFragment();
b.a(this, new ArrayList(e));
this.photoFragment.setArguments(makeDataBundle(this.isMultiMode, this.multiSelectLimitSize));
replaceFragment(R.id.picker_photos_fragment, this.photoFragment);
} else {
this.photoFragment.resetFragment(e, this.hasSelectList.size());
}
setTitle(aVar.d());
this.isAlbumPage = false;
}
private Bundle makeDataBundle(boolean z, int i) {
Bundle bundle = new Bundle();
bundle.putBoolean("multi_select_mode", z);
bundle.putInt("multi_select_size_limit", i);
bundle.putInt("extra_screen_orientation", this.orientation);
return bundle;
}
@Override
public void onPhotoSingleClick(List<PhotoInfo> list, int i) {
if (this.isMultiMode) {
PickerAlbumPreviewActivity.start((Activity) this, list, i, this.isSupportOriginal, this.isSendOriginalImage, this.hasSelectList, this.multiSelectLimitSize);
return;
}
if (list != null) {
PhotoInfo photoInfo = list.get(i);
ArrayList arrayList = new ArrayList();
arrayList.add(photoInfo);
setResult(-1, com.qiyukf.uikit.common.media.picker.model.b.a(arrayList, false));
finish();
}
}
@Override
public void onPhotoSelectClick(PhotoInfo photoInfo) {
if (photoInfo == null) {
return;
}
if (photoInfo.isChoose()) {
if (!checkSelectPhoto(photoInfo)) {
addSelectPhoto(photoInfo);
}
} else {
removeSelectPhoto(photoInfo);
}
updateSelectBtnStatus();
}
private boolean checkSelectPhoto(PhotoInfo photoInfo) {
for (int i = 0; i < this.hasSelectList.size(); i++) {
if (this.hasSelectList.get(i).getImageId() == photoInfo.getImageId()) {
return true;
}
}
return false;
}
private void removeSelectPhoto(PhotoInfo photoInfo) {
Iterator<PhotoInfo> it = this.hasSelectList.iterator();
while (it.hasNext()) {
if (it.next().getImageId() == photoInfo.getImageId()) {
it.remove();
}
}
}
private void addSelectPhoto(PhotoInfo photoInfo) {
this.hasSelectList.add(photoInfo);
}
private void resetSelectPhotos(List<PhotoInfo> list) {
List<PhotoInfo> list2 = this.hasSelectList;
if (list2 != null) {
list2.clear();
} else {
this.hasSelectList = new ArrayList();
}
this.hasSelectList.addAll(list);
}
private void updateSelectBtnStatus() {
int size = this.hasSelectList.size();
if (size > 0) {
this.pickerPreview.setEnabled(true);
this.pickerSend.setEnabled(true);
this.pickerSend.setText(String.format(getResources().getString(R.string.ysf_picker_image_send_select), Integer.valueOf(size)));
} else {
this.pickerPreview.setEnabled(false);
this.pickerSend.setEnabled(false);
this.pickerSend.setText(R.string.ysf_send);
}
}
@Override
public void onClick(View view) {
if (view.getId() == R.id.picker_bottombar_preview) {
List<PhotoInfo> list = this.hasSelectList;
PickerAlbumPreviewActivity.start((Activity) this, list, 0, this.isSupportOriginal, this.isSendOriginalImage, list, this.multiSelectLimitSize);
} else if (view.getId() == R.id.picker_bottombar_select) {
setResult(-1, com.qiyukf.uikit.common.media.picker.model.b.a(this.hasSelectList, this.isSendOriginalImage));
finish();
}
}
@Override
public void onBackPressed() {
if (this.isAlbumPage) {
finish();
} else {
backToAlbumPage();
}
}
private void backToAlbumPage() {
setTitle(R.string.ysf_picker_image_folder);
this.isAlbumPage = true;
this.pickerAlbumLayout.setVisibility(0);
this.pickerPhotosLayout.setVisibility(8);
}
protected void onActivityResult(int i, int i2, Intent intent) {
List<PhotoInfo> list;
if (i != 5 || intent == null) {
return;
}
if (i2 == -1) {
setResult(-1, new Intent(intent));
finish();
return;
}
if (i2 == 2) {
this.isSendOriginalImage = intent.getBooleanExtra("is_original", false);
List<PhotoInfo> b = com.qiyukf.uikit.common.media.picker.model.b.b(intent);
PickerImageFragment pickerImageFragment = this.photoFragment;
if (pickerImageFragment != null && b != null) {
pickerImageFragment.updateSelectPhotos(b);
}
resetSelectPhotos(com.qiyukf.uikit.common.media.picker.model.b.b(intent));
updateSelectBtnStatus();
PickerImageFragment pickerImageFragment2 = this.photoFragment;
if (pickerImageFragment2 == null || (list = this.hasSelectList) == null) {
return;
}
pickerImageFragment2.updateSelectedForAdapter(list.size());
}
}
@Override
public void onConfigurationChanged(Configuration configuration) {
this.orientation = configuration.orientation;
super.onConfigurationChanged(configuration);
}
}