List of usage examples for android.support.v4.app SharedElementCallback SharedElementCallback
SharedElementCallback
From source file:org.xbmc.kore.utils.SharedElementTransition.java
/** * Sets up the transition for the exiting fragment * @param fragment/* w ww . j a v a 2 s. c o m*/ */ @TargetApi(21) public void setupExitTransition(Context context, Fragment fragment) { Transition fade = TransitionInflater.from(context).inflateTransition(android.R.transition.fade); fragment.setExitTransition(fade); fragment.setReenterTransition(fade); fragment.setExitSharedElementCallback(new SharedElementCallback() { @Override public void onMapSharedElements(List<String> names, Map<String, View> sharedElements) { // Clearing must be done in the reentering fragment // as this is called last. Otherwise, the app will crash during transition setup. Not sure, but might // be a v4 support package bug. if (clearSharedElements) { names.clear(); sharedElements.clear(); clearSharedElements = false; } } }); }
From source file:ooo.oxo.mr.MainActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MiuiStatusBarCompat.enableLightStatusBar(getWindow()); binding = DataBindingUtil.setContentView(this, R.layout.main_activity); setSupportActionBar(binding.toolbar); images = MrSharedState.getInstance().getImages(); Glide.get(this).setMemoryCategory(MemoryCategory.HIGH); binding.content.setAdapter(new MainAdapter(this, images, Glide.with(this), this)); setExitSharedElementCallback(new SharedElementCallback() { @Override//from ww w . j a v a 2 s. c o m public void onMapSharedElements(List<String> names, Map<String, View> sharedElements) { if (reenterState != null) { int index = reenterState.getInt("index", 0); Image image = images.get(index); MainAdapter.ViewHolder holder = (MainAdapter.ViewHolder) binding.content .findViewHolderForLayoutPosition(index); sharedElements.clear(); if (holder != null && holder.binding != null) { sharedElements.put(String.format("%s.image", image.getObjectId()), holder.binding.image); } reenterState = null; } } }); Observable<List<Image>> load = Observable.just(images) .doOnSubscribe(() -> binding.refresher.setRefreshing(true)) .doOnCompleted(() -> binding.refresher.setRefreshing(false)) .map(whatever -> images.isEmpty() ? Image.all() : Image.since(images.get(0))) .observeOn(Schedulers.io()).flatMap(RxAVQuery::find).observeOn(AndroidSchedulers.mainThread()) .doOnNext(RxList.prependTo(images)); RxSwipeRefreshLayout.refreshes(binding.refresher).compose(bindToLifecycle()).flatMap(whatever -> load) .retry((count, tr) -> { Log.e(TAG, "An error occurred while fetching images", tr); ToastUtil.shorts(this, tr.getMessage()); binding.refresher.setRefreshing(false); return true; }).filter(loaded -> !loaded.isEmpty()) .subscribe(loaded -> binding.content.smoothScrollToPosition(0)); load.compose(bindToLifecycle()).onErrorReturn(tr -> { Log.e(TAG, "An error occurred while fetching images", tr); ToastUtil.shorts(this, tr.getMessage()); binding.refresher.setRefreshing(false); return null; }).subscribe(); UpdateUtil.checkForUpdate(version -> UpdateUtil.promptUpdate(this, version)); }
From source file:me.xingrz.gankmeizhi.ViewerActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); supportPostponeEnterTransition();/*from w w w . j av a 2s . c om*/ setContentView(R.layout.activity_viewer); ButterKnife.bind(this); index = getIntent().getIntExtra("index", 0); realm = Realm.getDefaultInstance(); realm.addChangeListener(this); images = Image.all(realm); puller.setCallback(this); adapter = new PagerAdapter(); pager.setAdapter(adapter); pager.setCurrentItem(index); // ?? Shared Element Transition Toolbar if (Build.VERSION.SDK_INT >= 21) { getWindow().setSharedElementsUseOverlay(false); } setEnterSharedElementCallback(new SharedElementCallback() { @Override public void onMapSharedElements(List<String> names, Map<String, View> sharedElements) { Image image = images.get(pager.getCurrentItem()); sharedElements.clear(); sharedElements.put(image.getUrl(), adapter.getCurrent().getSharedElement()); } }); }
From source file:com.appeaser.imagetransitionlibrary.ImageTransitionUtil.java
/** * Returns a `SharedElementCallback` that works with the given `rounding` amounts. * A `startValue` of `1f` (or RoundingProgress.MAX.progressValue()) * & an `endValue` of `0f` (or RoundingProgress.MIN.progressValue()) * will give you same functionality as {@link ImageTransitionUtil#DEFAULT_SHARED_ELEMENT_CALLBACK}. * * @param startValue rounding applied to TransitionImageView in the first Activity * @param endValue rounding applied to TransitionImageView in the second Activity * @return SharedElementCallback that works with the given `rounding` amounts */// w ww . j a va2 s . c o m public static SharedElementCallback prepareSharedElementCallbackFor(final float startValue, final float endValue) { return new SharedElementCallback() { @Override public void onSharedElementStart(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots) { super.onSharedElementStart(sharedElementNames, sharedElements, sharedElementSnapshots); // find TransitionImageView in the list of shared elements for (View sharedElement : sharedElements) { if (sharedElement instanceof TransitionImageView) { // this value is retrieved in `ImageTransition#captureStartValues(TransitionValues)` // when entering the second `Activity`. // while exiting from from second `Activity`, this value is retrieved // in `ImageTransition#captureEndValues(TransitionValues)`. ((TransitionImageView) sharedElement).setRoundingProgress(startValue); } } } @Override public void onSharedElementEnd(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots) { super.onSharedElementEnd(sharedElementNames, sharedElements, sharedElementSnapshots); // find TransitionImageView in the list of shared elements for (View sharedElement : sharedElements) { if (sharedElement instanceof TransitionImageView) { TransitionImageView tiv = (TransitionImageView) sharedElement; // this value is retrieved in `ImageTransition#captureEndValues(TransitionValues)` // when entering the second `Activity`. // while exiting from from second `Activity`, this value is retrieved // in `ImageTransition#captureStartValues(TransitionValues)`. // Note that we only set this value when entering (checked by the if-condition below) // the second `Activity`. // In case the user exits the second `Activity` before the transition completes, // we would like to transition from the current amount of rounding, rather // than the MIN value. if (tiv.getRoundingProgress() == startValue) { tiv.setRoundingProgress(endValue); } } } } }; }
From source file:org.xbmc.kore.ui.MusicActivity.java
@TargetApi(21) @Override// w ww.jav a 2s . co m protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_generic_media); // Set up the drawer. navigationDrawerFragment = (NavigationDrawerFragment) getSupportFragmentManager() .findFragmentById(R.id.navigation_drawer); navigationDrawerFragment.setUp(R.id.navigation_drawer, (DrawerLayout) findViewById(R.id.drawer_layout)); if (savedInstanceState == null) { musicListFragment = new MusicListFragment(); // Setup animations if (Utils.isLollipopOrLater()) { musicListFragment.setExitTransition(null); musicListFragment.setReenterTransition( TransitionInflater.from(this).inflateTransition(android.R.transition.fade)); musicListFragment.setExitSharedElementCallback(new SharedElementCallback() { @Override public void onMapSharedElements(List<String> names, Map<String, View> sharedElements) { // Clearing must be done in the reentering fragment // as this is called last. Otherwise, the app will crash during transition setup. Not sure, but might // be a v4 support package bug. if (clearSharedElements) { names.clear(); sharedElements.clear(); clearSharedElements = false; } } }); } getSupportFragmentManager().beginTransaction().add(R.id.fragment_container, musicListFragment).commit(); } else { selectedAlbumId = savedInstanceState.getInt(ALBUMID, -1); selectedArtistId = savedInstanceState.getInt(ARTISTID, -1); selectedGenreId = savedInstanceState.getInt(GENREID, -1); selectedMusicVideoId = savedInstanceState.getInt(MUSICVIDEOID, -1); selectedAlbumTitle = savedInstanceState.getString(ALBUMTITLE, null); selectedArtistName = savedInstanceState.getString(ARTISTNAME, null); selectedGenreTitle = savedInstanceState.getString(GENRETITLE, null); selectedMusicVideoTitle = savedInstanceState.getString(MUSICVIDEOTITLE, null); } setupActionBar(selectedAlbumTitle, selectedArtistName, selectedGenreTitle, selectedMusicVideoTitle); // // Setup system bars and content padding, allowing averlap with the bottom bar // setupSystemBarsColors(); // UIUtils.setPaddingForSystemBars(this, findViewById(R.id.fragment_container), true, true, true); // UIUtils.setPaddingForSystemBars(this, findViewById(R.id.drawer_layout), true, true, true); }
From source file:me.xingrz.gankmeizhi.MainActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MobclickAgent.updateOnlineConfig(this); setContentView(R.layout.activity_main); ButterKnife.bind(this); setSupportActionBar(toolbar);/*from w w w.j a v a 2 s . c om*/ final SystemBarTintManager tintManager = new SystemBarTintManager(this); tintManager.setStatusBarTintEnabled(true); tintManager.setStatusBarTintColor(colorPrimary); tintManager.setStatusBarAlpha(1.0f); appbar.addOnOffsetChangedListener((appBarLayout, i) -> tintManager.setStatusBarTintColor( ColorMixer.mix(colorPrimary, Color.BLACK, (float) -i / (float) appbar.getHeight()))); refresher.setColorSchemeResources(R.color.primary); refresher.setOnRefreshListener(this); realm = Realm.getDefaultInstance(); realm.addChangeListener(this); adapter = new MeizhiAdapter(this) { @Override protected void onItemClick(View v, int position) { startViewerActivity(v, position); } }; layoutManager = new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.VERTICAL); content.setAdapter(adapter); content.setLayoutManager(layoutManager); content.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrollStateChanged(RecyclerView recyclerView, int newState) { if (newState == RecyclerView.SCROLL_STATE_IDLE) { MainActivity.this.onScrolled(); } } }); setExitSharedElementCallback(new SharedElementCallback() { @Override public void onMapSharedElements(List<String> names, Map<String, View> sharedElements) { if (reenterState != null) { int i = reenterState.getInt("index", 0); Log.d(TAG, "reenter from " + i); sharedElements.clear(); sharedElements.put(adapter.get(i).url, layoutManager.findViewByPosition(i)); reenterState = null; } } }); localBroadcastManager = LocalBroadcastManager.getInstance(this); if (populate() == 0) { fetchForward(); } }
From source file:ooo.oxo.mr.ViewerActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); binding = DataBindingUtil.setContentView(this, R.layout.viewer_activity); setTitle(null);//from www . j ava2s . c o m binding.toolbar.setNavigationOnClickListener(v -> supportFinishAfterTransition()); binding.toolbar.inflateMenu(R.menu.viewer); binding.puller.setCallback(this); supportPostponeEnterTransition(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { getWindow().getEnterTransition().addListener(new SimpleTransitionListener() { @Override @TargetApi(Build.VERSION_CODES.LOLLIPOP) public void onTransitionEnd(Transition transition) { getWindow().getEnterTransition().removeListener(this); fadeIn(); } }); } else { fadeIn(); } background = new ColorDrawable(Color.BLACK); binding.getRoot().setBackground(background); adapter = new Adapter(); binding.pager.setAdapter(adapter); binding.pager.setCurrentItem(getIntent().getIntExtra("index", 0)); binding.pager.addOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() { @Override public void onPageScrollStateChanged(int state) { if (state == ViewPager.SCROLL_STATE_DRAGGING) { fadeOut(); } } }); listener = new ObservableListPagerAdapterCallback(adapter); images.addOnListChangedCallback(listener); setEnterSharedElementCallback(new SharedElementCallback() { @Override public void onMapSharedElements(List<String> names, Map<String, View> sharedElements) { Image image = images.get(binding.pager.getCurrentItem()); sharedElements.clear(); sharedElements.put(String.format("%s.image", image.getObjectId()), getCurrent().getSharedElement()); } }); menuItemClicks(R.id.share).compose(bindToLifecycle()) .compose(ensurePermissions(Manifest.permission.WRITE_EXTERNAL_STORAGE)) .map(avoid -> getCurrentImage()) .doOnNext(image -> MobclickAgent.onEvent(this, "share", image.getObjectId())) .observeOn(Schedulers.io()).flatMap(this::saveIfNeeded).observeOn(AndroidSchedulers.mainThread()) .doOnNext(this::notifyMediaScanning).map(Uri::fromFile).retry().subscribe(uri -> { final Intent intent = new Intent(Intent.ACTION_SEND); intent.setType("image/jpeg"); intent.putExtra(Intent.EXTRA_STREAM, uri); startActivity(Intent.createChooser(intent, getString(R.string.share_title))); }); menuItemClicks(R.id.save).compose(bindToLifecycle()) .compose(ensurePermissions(Manifest.permission.WRITE_EXTERNAL_STORAGE)) .map(avoid -> getCurrentImage()) .doOnNext(image -> MobclickAgent.onEvent(this, "save", image.getObjectId())) .observeOn(Schedulers.io()).flatMap(this::saveIfNeeded).observeOn(AndroidSchedulers.mainThread()) .doOnNext(this::notifyMediaScanning).retry().subscribe(file -> { ToastUtil.shorts(this, R.string.save_success, file.getPath()); }); final WallpaperManager wm = WallpaperManager.getInstance(this); menuItemClicks(R.id.set_wallpaper).compose(bindToLifecycle()).map(avoid -> getCurrentImage()) .doOnNext(image -> MobclickAgent.onEvent(this, "set_wallpaper", image.getObjectId())) .observeOn(Schedulers.io()).flatMap(this::download).observeOn(AndroidSchedulers.mainThread()) .map(file -> FileProvider.getUriForFile(this, AUTHORITY_IMAGES, file)).retry().subscribe(uri -> { if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) { startActivity(wm.getCropAndSetWallpaperIntent(uri)); } else { try { wm.setStream(getContentResolver().openInputStream(uri)); ToastUtil.shorts(this, R.string.set_wallpaper_success); } catch (IOException e) { Log.e(TAG, "Failed to set wallpaper", e); ToastUtil.shorts(this, e.getMessage(), e); } } }); }
From source file:org.getlantern.firetweet.fragment.support.UserFragment.java
@Override public void onActivityCreated(final Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); final FragmentActivity activity = getActivity(); setHasOptionsMenu(true);//from w w w. j a va2 s .c o m getSharedPreferences(USER_COLOR_PREFERENCES_NAME, Context.MODE_PRIVATE) .registerOnSharedPreferenceChangeListener(this); getSharedPreferences(USER_NICKNAME_PREFERENCES_NAME, Context.MODE_PRIVATE) .registerOnSharedPreferenceChangeListener(this); mLocale = getResources().getConfiguration().locale; mCardBackgroundColor = ThemeUtils.getCardBackgroundColor(activity); mProfileImageLoader = getApplication().getMediaLoaderWrapper(); final Bundle args = getArguments(); long accountId = -1, userId = -1; String screenName = null; if (savedInstanceState != null) { args.putAll(savedInstanceState); } else { accountId = args.getLong(EXTRA_ACCOUNT_ID, -1); userId = args.getLong(EXTRA_USER_ID, -1); screenName = args.getString(EXTRA_SCREEN_NAME); } Utils.setNdefPushMessageCallback(activity, new CreateNdefMessageCallback() { @Override public NdefMessage createNdefMessage(NfcEvent event) { final ParcelableUser user = getUser(); if (user == null) return null; return new NdefMessage(new NdefRecord[] { NdefRecord.createUri(LinkCreator.getTwitterUserLink(user.screen_name)), }); } }); activity.setEnterSharedElementCallback(new SharedElementCallback() { @Override public void onSharedElementStart(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots) { final int idx = sharedElementNames.indexOf(TRANSITION_NAME_PROFILE_IMAGE); if (idx != -1) { final View view = sharedElements.get(idx); int[] location = new int[2]; final RectF bounds = new RectF(0, 0, view.getWidth(), view.getHeight()); view.getLocationOnScreen(location); bounds.offsetTo(location[0], location[1]); mProfileImageView.setTransitionSource(bounds); } super.onSharedElementStart(sharedElementNames, sharedElements, sharedElementSnapshots); } @Override public void onSharedElementEnd(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots) { int idx = sharedElementNames.indexOf(TRANSITION_NAME_PROFILE_IMAGE); if (idx != -1) { final View view = sharedElements.get(idx); int[] location = new int[2]; final RectF bounds = new RectF(0, 0, view.getWidth(), view.getHeight()); view.getLocationOnScreen(location); bounds.offsetTo(location[0], location[1]); mProfileImageView.setTransitionDestination(bounds); } super.onSharedElementEnd(sharedElementNames, sharedElements, sharedElementSnapshots); } }); ViewCompat.setTransitionName(mProfileImageView, TRANSITION_NAME_PROFILE_IMAGE); ViewCompat.setTransitionName(mProfileTypeView, TRANSITION_NAME_PROFILE_TYPE); // ViewCompat.setTransitionName(mCardView, TRANSITION_NAME_CARD); mHeaderDrawerLayout.setDrawerCallback(this); mPagerAdapter = new SupportTabsAdapter(activity, getChildFragmentManager()); mViewPager.setOffscreenPageLimit(3); mViewPager.setAdapter(mPagerAdapter); mPagerIndicator.setViewPager(mViewPager); mPagerIndicator.setTabDisplayOption(TabPagerIndicator.LABEL); mFollowButton.setOnClickListener(this); mProfileImageView.setOnClickListener(this); mProfileBannerView.setOnClickListener(this); mListedContainer.setOnClickListener(this); mFollowersContainer.setOnClickListener(this); mFriendsContainer.setOnClickListener(this); mRetryButton.setOnClickListener(this); mProfileBannerView.setOnSizeChangedListener(this); mProfileBannerSpace.setOnTouchListener(this); mProfileNameBackground.setBackgroundColor(mCardBackgroundColor); mProfileDetailsContainer.setBackgroundColor(mCardBackgroundColor); mPagerIndicator.setBackgroundColor(mCardBackgroundColor); mUuckyFooter.setBackgroundColor(mCardBackgroundColor); getUserInfo(accountId, userId, screenName, false); final float actionBarElevation = ThemeUtils.getSupportActionBarElevation(activity); ViewCompat.setElevation(mPagerIndicator, actionBarElevation); setupBaseActionBar(); setupUserPages(); }
From source file:org.mariotaku.twidere.fragment.support.UserFragment.java
@Override public void onActivityCreated(final Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); final FragmentActivity activity = getActivity(); setHasOptionsMenu(true);//from www . java 2 s . c o m getSharedPreferences(USER_COLOR_PREFERENCES_NAME, Context.MODE_PRIVATE) .registerOnSharedPreferenceChangeListener(this); getSharedPreferences(USER_NICKNAME_PREFERENCES_NAME, Context.MODE_PRIVATE) .registerOnSharedPreferenceChangeListener(this); mUserColorNameManager = UserColorNameManager.getInstance(activity); mPreferences = SharedPreferencesWrapper.getInstance(activity, SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE, SharedPreferenceConstants.class); mNameFirst = mPreferences.getBoolean(KEY_NAME_FIRST); mLocale = getResources().getConfiguration().locale; mCardBackgroundColor = ThemeUtils.getCardBackgroundColor(activity, ThemeUtils.getThemeBackgroundOption(activity), ThemeUtils.getUserThemeBackgroundAlpha(activity)); mActionBarShadowColor = 0xA0000000; final TwidereApplication app = TwidereApplication.getInstance(activity); mProfileImageLoader = app.getMediaLoaderWrapper(); final Bundle args = getArguments(); long accountId = -1, userId = -1; String screenName = null; if (savedInstanceState != null) { args.putAll(savedInstanceState); } else { accountId = args.getLong(EXTRA_ACCOUNT_ID, -1); userId = args.getLong(EXTRA_USER_ID, -1); screenName = args.getString(EXTRA_SCREEN_NAME); } Utils.setNdefPushMessageCallback(activity, new CreateNdefMessageCallback() { @Override public NdefMessage createNdefMessage(NfcEvent event) { final ParcelableUser user = getUser(); if (user == null) return null; return new NdefMessage(new NdefRecord[] { NdefRecord.createUri(LinkCreator.getTwitterUserLink(user.screen_name)), }); } }); activity.setEnterSharedElementCallback(new SharedElementCallback() { @Override public void onSharedElementStart(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots) { final int idx = sharedElementNames.indexOf(TRANSITION_NAME_PROFILE_IMAGE); if (idx != -1) { final View view = sharedElements.get(idx); int[] location = new int[2]; final RectF bounds = new RectF(0, 0, view.getWidth(), view.getHeight()); view.getLocationOnScreen(location); bounds.offsetTo(location[0], location[1]); mProfileImageView.setTransitionSource(bounds); } super.onSharedElementStart(sharedElementNames, sharedElements, sharedElementSnapshots); } @Override public void onSharedElementEnd(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots) { int idx = sharedElementNames.indexOf(TRANSITION_NAME_PROFILE_IMAGE); if (idx != -1) { final View view = sharedElements.get(idx); int[] location = new int[2]; final RectF bounds = new RectF(0, 0, view.getWidth(), view.getHeight()); view.getLocationOnScreen(location); bounds.offsetTo(location[0], location[1]); mProfileImageView.setTransitionDestination(bounds); } super.onSharedElementEnd(sharedElementNames, sharedElements, sharedElementSnapshots); } }); ViewCompat.setTransitionName(mProfileImageView, TRANSITION_NAME_PROFILE_IMAGE); ViewCompat.setTransitionName(mProfileTypeView, TRANSITION_NAME_PROFILE_TYPE); // ViewCompat.setTransitionName(mCardView, TRANSITION_NAME_CARD); mHeaderDrawerLayout.setDrawerCallback(this); mPagerAdapter = new SupportTabsAdapter(activity, getChildFragmentManager()); mViewPager.setOffscreenPageLimit(3); mViewPager.setAdapter(mPagerAdapter); mPagerIndicator.setViewPager(mViewPager); mPagerIndicator.setTabDisplayOption(TabPagerIndicator.LABEL); mPagerIndicator.setOnPageChangeListener(this); mFollowButton.setOnClickListener(this); mProfileImageView.setOnClickListener(this); mProfileBannerView.setOnClickListener(this); mListedContainer.setOnClickListener(this); mFollowersContainer.setOnClickListener(this); mFriendsContainer.setOnClickListener(this); mHeaderErrorIcon.setOnClickListener(this); mProfileBannerView.setOnSizeChangedListener(this); mProfileBannerSpace.setOnTouchListener(this); mProfileNameBackground.setBackgroundColor(mCardBackgroundColor); mProfileDetailsContainer.setBackgroundColor(mCardBackgroundColor); mPagerIndicator.setBackgroundColor(mCardBackgroundColor); mUuckyFooter.setBackgroundColor(mCardBackgroundColor); final float actionBarElevation = ThemeUtils.getSupportActionBarElevation(activity); ViewCompat.setElevation(mPagerIndicator, actionBarElevation); if (activity instanceof IThemedActivity) { ViewSupport.setBackground(mPagerOverlay, ThemeUtils.getNormalWindowContentOverlay(activity, ((IThemedActivity) activity).getCurrentThemeResourceId())); ViewSupport.setBackground(mErrorOverlay, ThemeUtils.getNormalWindowContentOverlay(activity, ((IThemedActivity) activity).getCurrentThemeResourceId())); } setupBaseActionBar(); setupUserPages(); if (activity instanceof IThemedActivity) { setUiColor(((IThemedActivity) activity).getCurrentThemeColor()); } getUserInfo(accountId, userId, screenName, false); }