use of im.actor.sdk.controllers.pickers.file.view.MaterialInterpolator in project actor-platform by actorapp.
the class ExplorerFragment method onCreateView.
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
Log.d("Explorer Animation", "Created");
{
rootView = inflater.inflate(R.layout.picker_fragment_file_picker, container, false);
list = (ListView) rootView.findViewById(R.id.list);
Bundle bundle = getArguments();
statusView = (TextView) rootView.findViewById(R.id.status);
emptyView = rootView.findViewById(R.id.empty);
items = new ArrayList<ExplorerItem>();
if (bundle != null) {
path = bundle.getString("path");
Log.d(LOG_TAG, "Path: " + path);
File currentPathFile = new File(path);
File[] fileList = currentPathFile.listFiles();
title = currentPathFile.getPath();
if (title.contains(Environment.getExternalStorageDirectory().getPath())) {
title = title.replace(Environment.getExternalStorageDirectory().getPath(), "");
}
if (title.length() > 0 && title.toCharArray()[0] == '/') {
title = title.substring(1);
}
if (path.equals(Environment.getExternalStorageDirectory().getPath())) {
if (Environment.isExternalStorageEmulated()) {
title = getString(R.string.picker_file_memory_phone);
} else
title = getString((R.string.picker_file_memory_external));
} else if (path.equals("/"))
title = getString(R.string.picker_file_memory_phone);
if (fileList == null) {
statusView.setVisibility(View.VISIBLE);
File external = Environment.getExternalStorageDirectory();
if (path.equals(external.getPath()))
statusView.setText(R.string.picker_file_memory_external_error);
else
statusView.setText(R.string.picker_file_denied);
return rootView;
} else {
if (fileList.length == 0) {
emptyView.setVisibility(View.VISIBLE);
AnimationSet slideInAnimation = new AnimationSet(true);
slideInAnimation.setInterpolator(new MaterialInterpolator());
slideInAnimation.setDuration(280);
AlphaAnimation alphaAnimation = new AlphaAnimation(0, 1);
slideInAnimation.addAnimation(alphaAnimation);
TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, 150, 0);
slideInAnimation.addAnimation(translateAnimation);
emptyView.startAnimation(slideInAnimation);
statusView.setVisibility(View.VISIBLE);
AnimationSet slideInAnimation1 = new AnimationSet(true);
slideInAnimation1.setInterpolator(new MaterialInterpolator());
slideInAnimation1.setDuration(280);
//cause of offset
slideInAnimation1.setStartOffset(150);
AlphaAnimation alphaAnimation1 = new AlphaAnimation(0, 1);
slideInAnimation1.addAnimation(alphaAnimation1);
TranslateAnimation translateAnimation1 = new TranslateAnimation(0, 0, 150, 0);
slideInAnimation1.addAnimation(translateAnimation1);
statusView.startAnimation(slideInAnimation1);
statusView.setText(R.string.picker_file_directory_empty);
//return rootView;
}
}
Log.d(LOG_TAG, "Size: " + fileList.length);
for (File file : fileList) {
putItem(file);
}
Collections.sort(items, new FileNameOrderComparator());
insertBack();
adapter = new ExplorerAdapter(getActivity(), items);
} else {
welcome = true;
// items.add(new StorageItem(getActivity()));
adapter = new WelcomeExplorerAdapter(getActivity(), items);
items.add(new HeaderItem(getString(R.string.picker_file_header_main)));
String externalStorageState = Environment.getExternalStorageState();
Log.w(LOG_TAG, externalStorageState);
if (externalStorageState.equals(Environment.MEDIA_REMOVED) || externalStorageState.equals(Environment.MEDIA_BAD_REMOVAL) || externalStorageState.equals(Environment.MEDIA_UNKNOWN) || externalStorageState.equals(Environment.MEDIA_UNMOUNTED) || externalStorageState.equals(Environment.MEDIA_UNMOUNTABLE) || externalStorageState.equals(Environment.MEDIA_SHARED) || externalStorageState.equals(Environment.MEDIA_NOFS)) {
items.add(new StorageItem(getString(R.string.picker_file_memory_phone)));
} else {
/*
File cameraFile = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);
if(cameraFile.exists()) {
items.add(new FolderItem(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM),R.drawable.picker_folder_camera,getString(R.string.picker_files_camera)));
}*/
putItem(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM));
putItem(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS));
putItem((Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)));
putItem(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC));
putItem((Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES)));
if (Environment.isExternalStorageEmulated()) {
items.add(new ExternalStorageItem(getString(R.string.picker_file_memory_phone), R.drawable.picker_memory));
} else
items.add(new ExternalStorageItem(getString(R.string.picker_file_memory_external), R.drawable.picker_sdcard));
if (Build.VERSION.SDK_INT >= 19) {
// putItem(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS));
// even on sdk>19 documents folder does not work.
}
}
path = "";
title = getString(R.string.picker_file_activity_title);
ArrayList<ExplorerItem> historyItems = loadHistory();
if (!historyItems.isEmpty()) {
items.addAll(historyItems);
}
}
list.setAdapter(adapter);
list.setOnItemClickListener((BasePickerActivity) getActivity());
}
pickerActivity.updateCounter();
return rootView;
}
use of im.actor.sdk.controllers.pickers.file.view.MaterialInterpolator in project actor-platform by actorapp.
the class ExplorerFragment method onCreateAnimator.
@Override
public Animator onCreateAnimator(int transit, boolean enter, int nextAnim) {
Log.d("Explorer animation", "CreateAnimator: " + transit + " " + enter + " " + nextAnim);
int animationLength = 0;
if (nextAnim == R.animator.picker_fragment_explorer_welcome_enter) {
list.setAlpha(0);
list.post(new Runnable() {
@Override
public void run() {
list.setAlpha(1);
int offsetIncreaseOffset = 0;
for (int i = 0; i < list.getChildCount(); i++) {
View searchItemView = list.getChildAt(i);
AnimationSet slideInAnimation = new AnimationSet(true);
slideInAnimation.setInterpolator(new MaterialInterpolator());
slideInAnimation.setDuration(180);
if (items.get(i) instanceof HeaderItem) {
offsetIncreaseOffset += 150;
slideInAnimation.setStartOffset(i * 50 + offsetIncreaseOffset);
offsetIncreaseOffset += 200;
} else
slideInAnimation.setStartOffset(i * 50 + offsetIncreaseOffset);
AlphaAnimation alphaAnimation = new AlphaAnimation(0, 1);
slideInAnimation.addAnimation(alphaAnimation);
TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, 150, 0);
slideInAnimation.addAnimation(translateAnimation);
searchItemView.startAnimation(slideInAnimation);
}
}
});
animationLength = list.getChildCount() * 100 + 50;
Log.d("Explorer animation", "CreateAnimator: enter");
} else if (nextAnim == R.animator.picker_fragment_explorer_enter) {
list.setAlpha(0);
list.post(new Runnable() {
@Override
public void run() {
list.setAlpha(1);
int offsetIncreaseOffset = 0;
for (int i = 0; i < list.getChildCount(); i++) {
View searchItemView = list.getChildAt(i);
AnimationSet slideInAnimation = new AnimationSet(true);
slideInAnimation.setInterpolator(new MaterialInterpolator());
slideInAnimation.setDuration(100);
slideInAnimation.setStartOffset(i * 50 + offsetIncreaseOffset);
AlphaAnimation alphaAnimation = new AlphaAnimation(0, 1);
slideInAnimation.addAnimation(alphaAnimation);
TranslateAnimation translateAnimation = new TranslateAnimation(100, 0, 0, 0);
slideInAnimation.addAnimation(translateAnimation);
searchItemView.startAnimation(slideInAnimation);
}
}
});
animationLength = list.getChildCount() * 100 + 50;
Log.d("Explorer animation", "CreateAnimator: enter");
} else if (nextAnim == R.animator.picker_fragment_explorer_welcome_exit || nextAnim == R.animator.picker_fragment_explorer_exit) {
for (int i = 0; i < list.getChildCount(); i++) {
View searchItemView = list.getChildAt(i);
AnimationSet slideInAnimation = new AnimationSet(true);
slideInAnimation.setInterpolator(new MaterialInterpolator());
slideInAnimation.setDuration(100);
slideInAnimation.setStartOffset(i * 50);
slideInAnimation.setFillAfter(true);
AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0);
alphaAnimation.setFillAfter(true);
slideInAnimation.addAnimation(alphaAnimation);
TranslateAnimation translateAnimation = new TranslateAnimation(0, -100, 0, 0);
slideInAnimation.addAnimation(translateAnimation);
searchItemView.startAnimation(slideInAnimation);
}
// list.getChildCount() * 100 + 50;
animationLength = 0;
Log.d("Explorer animation", "CreateAnimator: exit");
} else if (nextAnim == R.animator.picker_fragment_explorer_return) {
list.setAlpha(0);
list.post(new Runnable() {
@Override
public void run() {
list.setAlpha(1);
for (int i = 0; i < list.getChildCount(); i++) {
View searchItemView = list.getChildAt(i);
AnimationSet slideInAnimation = new AnimationSet(true);
slideInAnimation.setInterpolator(new MaterialInterpolator());
slideInAnimation.setDuration(100);
slideInAnimation.setStartOffset(i * 50);
AlphaAnimation alphaAnimation = new AlphaAnimation(0, 1);
slideInAnimation.addAnimation(alphaAnimation);
TranslateAnimation translateAnimation = new TranslateAnimation(-100, 0, 0, 0);
slideInAnimation.addAnimation(translateAnimation);
searchItemView.startAnimation(slideInAnimation);
}
}
});
animationLength = list.getChildCount() * 100 + 50;
Log.d("Explorer animation", "CreateAnimator: return");
} else if (nextAnim == R.animator.picker_fragment_explorer_out) {
for (int i = 0; i < list.getChildCount(); i++) {
View searchItemView = list.getChildAt(i);
AnimationSet slideInAnimation = new AnimationSet(true);
slideInAnimation.setInterpolator(new MaterialInterpolator());
slideInAnimation.setDuration(100);
slideInAnimation.setStartOffset(i * 50);
slideInAnimation.setFillAfter(true);
AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0);
alphaAnimation.setFillAfter(true);
slideInAnimation.addAnimation(alphaAnimation);
TranslateAnimation translateAnimation = new TranslateAnimation(0, 100, 0, 0);
slideInAnimation.addAnimation(translateAnimation);
searchItemView.startAnimation(slideInAnimation);
}
if (items.size() == 1) {
AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0);
alphaAnimation.setInterpolator(new MaterialInterpolator());
alphaAnimation.setDuration(100);
alphaAnimation.setFillAfter(true);
emptyView.startAnimation(alphaAnimation);
statusView.startAnimation(alphaAnimation);
animationLength = 250;
}
//else
// list.getChildCount() * 100 + 50;
animationLength = 0;
Log.d("Explorer animation", "CreateAnimator: out");
}
AnimatorSet animator = (AnimatorSet) AnimatorInflater.loadAnimator(pickerActivity, R.animator.picker_fragment_explorer_enter);
animator.setDuration(animationLength);
return animator;
}
use of im.actor.sdk.controllers.pickers.file.view.MaterialInterpolator in project actor-platform by actorapp.
the class SearchFileFragment method showItems.
private void showItems(ArrayList<ExplorerItem> found) {
items.clear();
items.addAll(found);
status.setVisibility(View.GONE);
adapter.notifyDataSetChanged();
if (!animated) {
listView.setAlpha(0);
listView.post(new Runnable() {
@Override
public void run() {
listView.setAlpha(1);
for (int i = 0; i < listView.getChildCount(); i++) {
View searchItemView = listView.getChildAt(i);
AnimationSet slideInAnimation = new AnimationSet(true);
slideInAnimation.setInterpolator(new MaterialInterpolator());
slideInAnimation.setDuration(200);
if (i != 0) {
slideInAnimation.setStartOffset(i * 50 + 25);
} else {
slideInAnimation.setStartOffset(75);
}
AlphaAnimation alphaAnimation = new AlphaAnimation(0, 1);
slideInAnimation.addAnimation(alphaAnimation);
TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, 150, 0);
slideInAnimation.addAnimation(translateAnimation);
searchItemView.startAnimation(slideInAnimation);
}
}
});
animated = true;
} else
listView.setVisibility(View.VISIBLE);
}
use of im.actor.sdk.controllers.pickers.file.view.MaterialInterpolator in project actor-platform by actorapp.
the class SearchFileFragment method onCreateView.
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = inflater.inflate(R.layout.picker_fragment_file_search, container, false);
root = getArguments().getString("root");
// ViewGroup searchContainer = (ViewGroup) rootView.findViewById(R.id.search_container);
View contentContainer = rootView.findViewById(R.id.content_container);
status = (TextView) rootView.findViewById(R.id.status);
// progress = new IndeterminateWrapper(pickerActivity);
// progress.show();
listView = (ListView) contentContainer.findViewById(R.id.list);
listView.setOnScrollListener(this);
adapter = new ExplorerAdapter(pickerActivity, items);
listView.setAdapter(adapter);
listView.setOnItemClickListener(pickerActivity);
AlphaAnimation alphaAnimation = new AlphaAnimation(0, 1);
alphaAnimation.setDuration(300);
alphaAnimation.setInterpolator(new MaterialInterpolator());
TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, -150, 0);
translateAnimation.setDuration(450);
translateAnimation.setInterpolator(new MaterialInterpolator());
// searchContainer.startAnimation(translateAnimation);
contentContainer.startAnimation(alphaAnimation);
/**/
pickerActivity.getSupportActionBar().setTitle(R.string.picker_file_search_activity_title);
if (index.isEmpty()) {
indexingTask = new IndexTask(new File(root)) {
@Override
public void onIndexingEnded(ArrayList<File> indexedItems) {
index.clear();
index.addAll(indexedItems);
indexingTask = null;
if (searchingTask != null) {
searchingTask.execute();
} else {
// progress.hide();
}
}
};
//searchingProgressBar.progressiveStart();
indexingTask.execute();
} else {
}
return rootView;
}
Aggregations