List of usage examples for android.widget RelativeLayout setOnClickListener
public void setOnClickListener(@Nullable OnClickListener l)
From source file:com.klinker.android.twitter.ui.drawer_activities.DrawerActivity.java
public void setUpDrawer(int number, final String actName) { try {/*from w ww .ja v a2 s .c om*/ ViewConfiguration config = ViewConfiguration.get(this); Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey"); if (menuKeyField != null) { menuKeyField.setAccessible(true); menuKeyField.setBoolean(config, false); } } catch (Exception ex) { // Ignore } actionBar = getActionBar(); MainDrawerArrayAdapter.current = number; TypedArray a = context.getTheme().obtainStyledAttributes(new int[] { R.attr.drawerIcon }); int resource = a.getResourceId(0, 0); a.recycle(); a = context.getTheme().obtainStyledAttributes(new int[] { R.attr.read_button }); openMailResource = a.getResourceId(0, 0); a.recycle(); a = context.getTheme().obtainStyledAttributes(new int[] { R.attr.unread_button }); closedMailResource = a.getResourceId(0, 0); a.recycle(); mDrawerLayout = (NotificationDrawerLayout) findViewById(R.id.drawer_layout); mDrawer = (LinearLayout) findViewById(R.id.left_drawer); HoloTextView name = (HoloTextView) mDrawer.findViewById(R.id.name); HoloTextView screenName = (HoloTextView) mDrawer.findViewById(R.id.screen_name); backgroundPic = (NetworkedCacheableImageView) mDrawer.findViewById(R.id.background_image); profilePic = (NetworkedCacheableImageView) mDrawer.findViewById(R.id.profile_pic_contact); final ImageButton showMoreDrawer = (ImageButton) mDrawer.findViewById(R.id.options); final LinearLayout logoutLayout = (LinearLayout) mDrawer.findViewById(R.id.logoutLayout); final Button logoutDrawer = (Button) mDrawer.findViewById(R.id.logoutButton); drawerList = (ListView) mDrawer.findViewById(R.id.drawer_list); notificationList = (EnhancedListView) findViewById(R.id.notificationList); try { mDrawerLayout = (NotificationDrawerLayout) findViewById(R.id.drawer_layout); mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, Gravity.START); mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow_rev, Gravity.END); mDrawerToggle = new ActionBarDrawerToggle(this, /* host Activity */ mDrawerLayout, /* DrawerLayout object */ resource, /* nav drawer icon to replace 'Up' caret */ R.string.app_name, /* "open drawer" description */ R.string.app_name /* "close drawer" description */ ) { public void onDrawerClosed(View view) { actionBar.setIcon(new ColorDrawable(getResources().getColor(android.R.color.transparent))); if (logoutVisible) { Animation ranim = AnimationUtils.loadAnimation(context, R.anim.drawer_rotate_back); ranim.setFillAfter(true); showMoreDrawer.startAnimation(ranim); logoutLayout.setVisibility(View.GONE); drawerList.setVisibility(View.VISIBLE); logoutVisible = false; } if (MainDrawerArrayAdapter.current > 2) { actionBar.setTitle(actName); } else { int position = mViewPager.getCurrentItem(); String title = ""; try { title = "" + mSectionsPagerAdapter.getPageTitle(position); } catch (NullPointerException e) { title = ""; } actionBar.setTitle(title); } try { if (oldInteractions.getText().toString() .equals(getResources().getString(R.string.new_interactions))) { oldInteractions.setText(getResources().getString(R.string.old_interactions)); readButton.setImageResource(openMailResource); notificationList.enableSwipeToDismiss(); notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource .getInstance(context).getUnreadCursor(DrawerActivity.settings.currentAccount)); notificationList.setAdapter(notificationAdapter); } } catch (Exception e) { // don't have talon pull on } invalidateOptionsMenu(); } public void onDrawerOpened(View drawerView) { actionBar.setTitle(getResources().getString(R.string.app_name)); actionBar.setIcon(R.mipmap.ic_launcher); try { notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource .getInstance(context).getUnreadCursor(settings.currentAccount)); notificationList.setAdapter(notificationAdapter); notificationList.enableSwipeToDismiss(); oldInteractions.setText(getResources().getString(R.string.old_interactions)); readButton.setImageResource(openMailResource); sharedPrefs.edit().putBoolean("new_notification", false).commit(); } catch (Exception e) { // don't have talon pull on } invalidateOptionsMenu(); } public void onDrawerSlide(View drawerView, float slideOffset) { super.onDrawerSlide(drawerView, slideOffset); if (!actionBar.isShowing()) { actionBar.show(); } if (translucent) { statusBar.setVisibility(View.VISIBLE); } } }; mDrawerLayout.setDrawerListener(mDrawerToggle); } catch (Exception e) { // landscape mode } actionBar.setDisplayHomeAsUpEnabled(true); actionBar.setHomeButtonEnabled(true); showMoreDrawer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (logoutLayout.getVisibility() == View.GONE) { Animation ranim = AnimationUtils.loadAnimation(context, R.anim.drawer_rotate); ranim.setFillAfter(true); showMoreDrawer.startAnimation(ranim); Animation anim = AnimationUtils.loadAnimation(context, R.anim.fade_out); anim.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { drawerList.setVisibility(View.GONE); } @Override public void onAnimationRepeat(Animation animation) { } }); anim.setDuration(300); drawerList.startAnimation(anim); Animation anim2 = AnimationUtils.loadAnimation(context, R.anim.fade_in); anim2.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { logoutLayout.setVisibility(View.VISIBLE); } @Override public void onAnimationRepeat(Animation animation) { } }); anim2.setDuration(300); logoutLayout.startAnimation(anim2); logoutVisible = true; } else { Animation ranim = AnimationUtils.loadAnimation(context, R.anim.drawer_rotate_back); ranim.setFillAfter(true); showMoreDrawer.startAnimation(ranim); Animation anim = AnimationUtils.loadAnimation(context, R.anim.fade_in); anim.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { drawerList.setVisibility(View.VISIBLE); } @Override public void onAnimationRepeat(Animation animation) { } }); anim.setDuration(300); drawerList.startAnimation(anim); Animation anim2 = AnimationUtils.loadAnimation(context, R.anim.fade_out); anim2.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { logoutLayout.setVisibility(View.GONE); } @Override public void onAnimationRepeat(Animation animation) { } }); anim2.setDuration(300); logoutLayout.startAnimation(anim2); logoutVisible = false; } } }); logoutDrawer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { logoutFromTwitter(); } }); final String sName = settings.myName; final String sScreenName = settings.myScreenName; final String backgroundUrl = settings.myBackgroundUrl; final String profilePicUrl = settings.myProfilePicUrl; final BitmapLruCache mCache = App.getInstance(context).getProfileCache(); if (!backgroundUrl.equals("")) { backgroundPic.loadImage(backgroundUrl, false, null); //ImageUtils.loadImage(context, backgroundPic, backgroundUrl, mCache); } else { backgroundPic.setImageDrawable(getResources().getDrawable(R.drawable.default_header_background)); } backgroundPic.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { try { mDrawerLayout.closeDrawer(Gravity.START); } catch (Exception e) { } new Handler().postDelayed(new Runnable() { @Override public void run() { Intent viewProfile = new Intent(context, ProfilePager.class); viewProfile.putExtra("name", sName); viewProfile.putExtra("screenname", sScreenName); viewProfile.putExtra("proPic", profilePicUrl); viewProfile.putExtra("tweetid", 0); viewProfile.putExtra("retweet", false); viewProfile.putExtra("long_click", false); context.startActivity(viewProfile); } }, 400); } }); backgroundPic.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { try { mDrawerLayout.closeDrawer(Gravity.START); } catch (Exception e) { } new Handler().postDelayed(new Runnable() { @Override public void run() { Intent viewProfile = new Intent(context, ProfilePager.class); viewProfile.putExtra("name", sName); viewProfile.putExtra("screenname", sScreenName); viewProfile.putExtra("proPic", profilePicUrl); viewProfile.putExtra("tweetid", 0); viewProfile.putExtra("retweet", false); viewProfile.putExtra("long_click", true); context.startActivity(viewProfile); } }, 400); return false; } }); try { name.setText(sName); screenName.setText("@" + sScreenName); name.setTextSize(15); screenName.setTextSize(15); } catch (Exception e) { // 7 inch tablet in portrait } try { if (settings.roundContactImages) { //profilePic.loadImage(profilePicUrl, false, null, NetworkedCacheableImageView.CIRCLE); ImageUtils.loadCircleImage(context, profilePic, profilePicUrl, mCache); } else { profilePic.loadImage(profilePicUrl, false, null); ImageUtils.loadImage(context, profilePic, profilePicUrl, mCache); } } catch (Exception e) { // empty path again } MainDrawerArrayAdapter adapter = new MainDrawerArrayAdapter(context, new ArrayList<String>(Arrays.asList(MainDrawerArrayAdapter.getItems(context)))); drawerList.setAdapter(adapter); drawerList.setOnItemClickListener(new MainDrawerClickListener(context, mDrawerLayout, mViewPager)); // set up for the second account int count = 0; // number of accounts logged in if (sharedPrefs.getBoolean("is_logged_in_1", false)) { count++; } if (sharedPrefs.getBoolean("is_logged_in_2", false)) { count++; } RelativeLayout secondAccount = (RelativeLayout) findViewById(R.id.second_profile); HoloTextView name2 = (HoloTextView) findViewById(R.id.name_2); HoloTextView screenname2 = (HoloTextView) findViewById(R.id.screen_name_2); NetworkedCacheableImageView proPic2 = (NetworkedCacheableImageView) findViewById(R.id.profile_pic_2); name2.setTextSize(15); screenname2.setTextSize(15); final int current = sharedPrefs.getInt("current_account", 1); // make a second account if (count == 1) { name2.setText(getResources().getString(R.string.new_account)); screenname2.setText(getResources().getString(R.string.tap_to_setup)); secondAccount.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (canSwitch) { if (current == 1) { sharedPrefs.edit().putInt("current_account", 2).commit(); } else { sharedPrefs.edit().putInt("current_account", 1).commit(); } context.sendBroadcast(new Intent("com.klinker.android.twitter.STOP_PUSH_SERVICE")); context.sendBroadcast(new Intent("com.klinker.android.twitter.MARK_POSITION")); Intent login = new Intent(context, LoginActivity.class); AppSettings.invalidate(); finish(); startActivity(login); } } }); } else { // switch accounts if (current == 1) { name2.setText(sharedPrefs.getString("twitter_users_name_2", "")); screenname2.setText("@" + sharedPrefs.getString("twitter_screen_name_2", "")); try { if (settings.roundContactImages) { //proPic2.loadImage(sharedPrefs.getString("profile_pic_url_2", ""), true, null, NetworkedCacheableImageView.CIRCLE); ImageUtils.loadCircleImage(context, proPic2, sharedPrefs.getString("profile_pic_url_2", ""), mCache); } else { //proPic2.loadImage(sharedPrefs.getString("profile_pic_url_2", ""), true, null); ImageUtils.loadImage(context, proPic2, sharedPrefs.getString("profile_pic_url_2", ""), mCache); } } catch (Exception e) { } secondAccount.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (canSwitch) { context.sendBroadcast(new Intent("com.klinker.android.twitter.STOP_PUSH_SERVICE")); context.sendBroadcast(new Intent("com.klinker.android.twitter.MARK_POSITION") .putExtra("current_account", current)); Toast.makeText(context, "Preparing to switch", Toast.LENGTH_SHORT).show(); // we want to wait a second so that the mark position broadcast will work new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(1000); } catch (Exception e) { } sharedPrefs.edit().putInt("current_account", 2).commit(); sharedPrefs.edit().remove("new_notifications").remove("new_retweets") .remove("new_favorites").remove("new_follows").commit(); AppSettings.invalidate(); finish(); Intent next = new Intent(context, MainActivity.class); startActivity(next); } }).start(); } } }); } else { name2.setText(sharedPrefs.getString("twitter_users_name_1", "")); screenname2.setText("@" + sharedPrefs.getString("twitter_screen_name_1", "")); try { if (settings.roundContactImages) { //proPic2.loadImage(sharedPrefs.getString("profile_pic_url_1", ""), true, null, NetworkedCacheableImageView.CIRCLE); ImageUtils.loadCircleImage(context, proPic2, sharedPrefs.getString("profile_pic_url_1", ""), mCache); } else { //proPic2.loadImage(sharedPrefs.getString("profile_pic_url_1", ""), true, null); ImageUtils.loadImage(context, proPic2, sharedPrefs.getString("profile_pic_url_1", ""), mCache); } } catch (Exception e) { } secondAccount.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (canSwitch) { context.sendBroadcast(new Intent("com.klinker.android.twitter.STOP_PUSH_SERVICE")); context.sendBroadcast(new Intent("com.klinker.android.twitter.MARK_POSITION") .putExtra("current_account", current)); Toast.makeText(context, "Preparing to switch", Toast.LENGTH_SHORT).show(); new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(1000); } catch (Exception e) { } sharedPrefs.edit().putInt("current_account", 1).commit(); sharedPrefs.edit().remove("new_notifications").remove("new_retweets") .remove("new_favorites").remove("new_follows").commit(); AppSettings.invalidate(); finish(); Intent next = new Intent(context, MainActivity.class); startActivity(next); } }).start(); } } }); } } statusBar = findViewById(R.id.activity_status_bar); statusBarHeight = Utils.getStatusBarHeight(context); navBarHeight = Utils.getNavBarHeight(context); try { RelativeLayout.LayoutParams statusParams = (RelativeLayout.LayoutParams) statusBar.getLayoutParams(); statusParams.height = statusBarHeight; statusBar.setLayoutParams(statusParams); } catch (Exception e) { try { LinearLayout.LayoutParams statusParams = (LinearLayout.LayoutParams) statusBar.getLayoutParams(); statusParams.height = statusBarHeight; statusBar.setLayoutParams(statusParams); } catch (Exception x) { // in the trends } } View navBarSeperater = findViewById(R.id.nav_bar_seperator); if (translucent && Utils.hasNavBar(context)) { try { RelativeLayout.LayoutParams navParams = (RelativeLayout.LayoutParams) navBarSeperater .getLayoutParams(); navParams.height = navBarHeight; navBarSeperater.setLayoutParams(navParams); } catch (Exception e) { try { LinearLayout.LayoutParams navParams = (LinearLayout.LayoutParams) navBarSeperater .getLayoutParams(); navParams.height = navBarHeight; navBarSeperater.setLayoutParams(navParams); } catch (Exception x) { // in the trends } } } if (translucent) { if (Utils.hasNavBar(context)) { View footer = new View(context); footer.setOnClickListener(null); footer.setOnLongClickListener(null); ListView.LayoutParams params = new ListView.LayoutParams(ListView.LayoutParams.MATCH_PARENT, Utils.getNavBarHeight(context)); footer.setLayoutParams(params); drawerList.addFooterView(footer); drawerList.setFooterDividersEnabled(false); } View drawerStatusBar = findViewById(R.id.drawer_status_bar); LinearLayout.LayoutParams status2Params = (LinearLayout.LayoutParams) drawerStatusBar.getLayoutParams(); status2Params.height = statusBarHeight; drawerStatusBar.setLayoutParams(status2Params); drawerStatusBar.setVisibility(View.VISIBLE); statusBar.setVisibility(View.VISIBLE); drawerStatusBar = findViewById(R.id.drawer_status_bar_2); status2Params = (LinearLayout.LayoutParams) drawerStatusBar.getLayoutParams(); status2Params.height = statusBarHeight; drawerStatusBar.setLayoutParams(status2Params); drawerStatusBar.setVisibility(View.VISIBLE); } if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE || getResources().getBoolean(R.bool.isTablet)) { actionBar.setDisplayHomeAsUpEnabled(false); } if (!settings.pushNotifications) { try { mDrawerLayout.setDrawerLockMode(NotificationDrawerLayout.LOCK_MODE_LOCKED_CLOSED, Gravity.END); } catch (Exception e) { // no drawer? } } else { try { if (Build.VERSION.SDK_INT < 18 && DrawerActivity.settings.uiExtras) { View viewHeader2 = ((Activity) context).getLayoutInflater().inflate(R.layout.ab_header, null); notificationList.addHeaderView(viewHeader2, null, false); notificationList.setHeaderDividersEnabled(false); } } catch (Exception e) { // i don't know why it does this to be honest... } notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource.getInstance(context) .getUnreadCursor(DrawerActivity.settings.currentAccount)); try { notificationList.setAdapter(notificationAdapter); } catch (Exception e) { } View viewHeader = ((Activity) context).getLayoutInflater().inflate(R.layout.interactions_footer_1, null); notificationList.addFooterView(viewHeader, null, false); oldInteractions = (HoloTextView) findViewById(R.id.old_interactions_text); readButton = (ImageView) findViewById(R.id.read_button); LinearLayout footer = (LinearLayout) viewHeader.findViewById(R.id.footer); footer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (oldInteractions.getText().toString() .equals(getResources().getString(R.string.old_interactions))) { oldInteractions.setText(getResources().getString(R.string.new_interactions)); readButton.setImageResource(closedMailResource); notificationList.disableSwipeToDismiss(); notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource .getInstance(context).getCursor(DrawerActivity.settings.currentAccount)); } else { oldInteractions.setText(getResources().getString(R.string.old_interactions)); readButton.setImageResource(openMailResource); notificationList.enableSwipeToDismiss(); notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource .getInstance(context).getUnreadCursor(DrawerActivity.settings.currentAccount)); } notificationList.setAdapter(notificationAdapter); } }); if (DrawerActivity.translucent) { if (Utils.hasNavBar(context)) { View nav = new View(context); nav.setOnClickListener(null); nav.setOnLongClickListener(null); ListView.LayoutParams params = new ListView.LayoutParams(ListView.LayoutParams.MATCH_PARENT, Utils.getNavBarHeight(context)); nav.setLayoutParams(params); notificationList.addFooterView(nav); notificationList.setFooterDividersEnabled(false); } } notificationList.setDismissCallback(new EnhancedListView.OnDismissCallback() { @Override public EnhancedListView.Undoable onDismiss(EnhancedListView listView, int position) { Log.v("talon_interactions_delete", "position to delete: " + position); InteractionsDataSource data = InteractionsDataSource.getInstance(context); data.markRead(settings.currentAccount, position); notificationAdapter = new InteractionsCursorAdapter(context, data.getUnreadCursor(DrawerActivity.settings.currentAccount)); notificationList.setAdapter(notificationAdapter); oldInteractions.setText(getResources().getString(R.string.old_interactions)); readButton.setImageResource(openMailResource); if (notificationAdapter.getCount() == 0) { setNotificationFilled(false); } return null; } }); notificationList.enableSwipeToDismiss(); notificationList.setSwipeDirection(EnhancedListView.SwipeDirection.START); notificationList .setOnItemClickListener(new InteractionClickListener(context, mDrawerLayout, mViewPager)); } }
From source file:com.klinker.android.twitter.activities.drawer_activities.DrawerActivity.java
public void setUpDrawer(int number, final String actName) { int currentAccount = sharedPrefs.getInt("current_account", 1); for (int i = 0; i < TimelinePagerAdapter.MAX_EXTRA_PAGES; i++) { String pageIdentifier = "account_" + currentAccount + "_page_" + (i + 1); int type = sharedPrefs.getInt(pageIdentifier, AppSettings.PAGE_TYPE_NONE); if (type != AppSettings.PAGE_TYPE_NONE) { number++;// w w w .j a va2s .co m } } try { ViewConfiguration config = ViewConfiguration.get(this); Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey"); if (menuKeyField != null) { menuKeyField.setAccessible(true); menuKeyField.setBoolean(config, false); } } catch (Exception ex) { // Ignore } actionBar = getActionBar(); adapter = new MainDrawerArrayAdapter(context); MainDrawerArrayAdapter.setCurrent(context, number); TypedArray a = context.getTheme().obtainStyledAttributes(new int[] { R.attr.drawerIcon }); int resource = a.getResourceId(0, 0); a.recycle(); a = context.getTheme().obtainStyledAttributes(new int[] { R.attr.read_button }); openMailResource = a.getResourceId(0, 0); a.recycle(); a = context.getTheme().obtainStyledAttributes(new int[] { R.attr.unread_button }); closedMailResource = a.getResourceId(0, 0); a.recycle(); mDrawerLayout = (NotificationDrawerLayout) findViewById(R.id.drawer_layout); mDrawer = (LinearLayout) findViewById(R.id.left_drawer); HoloTextView name = (HoloTextView) mDrawer.findViewById(R.id.name); HoloTextView screenName = (HoloTextView) mDrawer.findViewById(R.id.screen_name); backgroundPic = (NetworkedCacheableImageView) mDrawer.findViewById(R.id.background_image); profilePic = (NetworkedCacheableImageView) mDrawer.findViewById(R.id.profile_pic_contact); final ImageButton showMoreDrawer = (ImageButton) mDrawer.findViewById(R.id.options); final LinearLayout logoutLayout = (LinearLayout) mDrawer.findViewById(R.id.logoutLayout); final Button logoutDrawer = (Button) mDrawer.findViewById(R.id.logoutButton); drawerList = (ListView) mDrawer.findViewById(R.id.drawer_list); notificationList = (EnhancedListView) findViewById(R.id.notificationList); try { mDrawerLayout = (NotificationDrawerLayout) findViewById(R.id.drawer_layout); mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, Gravity.START); mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow_rev, Gravity.END); mDrawerToggle = new ActionBarDrawerToggle(this, /* host Activity */ mDrawerLayout, /* DrawerLayout object */ resource, /* nav drawer icon to replace 'Up' caret */ R.string.app_name, /* "open drawer" description */ R.string.app_name /* "close drawer" description */ ) { public void onDrawerClosed(View view) { actionBar.setIcon(new ColorDrawable(getResources().getColor(android.R.color.transparent))); if (logoutVisible) { Animation ranim = AnimationUtils.loadAnimation(context, R.anim.drawer_rotate_back); ranim.setFillAfter(true); showMoreDrawer.startAnimation(ranim); logoutLayout.setVisibility(View.GONE); drawerList.setVisibility(View.VISIBLE); logoutVisible = false; } if (MainDrawerArrayAdapter.current > adapter.pageTypes.size()) { actionBar.setTitle(actName); } else { int position = mViewPager.getCurrentItem(); String title = ""; try { title = "" + mSectionsPagerAdapter.getPageTitle(position); } catch (NullPointerException e) { title = ""; } actionBar.setTitle(title); } try { if (oldInteractions.getText().toString() .equals(getResources().getString(R.string.new_interactions))) { oldInteractions.setText(getResources().getString(R.string.old_interactions)); readButton.setImageResource(openMailResource); notificationList.enableSwipeToDismiss(); notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource .getInstance(context).getUnreadCursor(DrawerActivity.settings.currentAccount)); notificationList.setAdapter(notificationAdapter); } } catch (Exception e) { // don't have talon pull on } invalidateOptionsMenu(); } public void onDrawerOpened(View drawerView) { actionBar.setTitle(getResources().getString(R.string.app_name)); actionBar.setIcon(R.mipmap.ic_launcher); try { notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource .getInstance(context).getUnreadCursor(settings.currentAccount)); notificationList.setAdapter(notificationAdapter); notificationList.enableSwipeToDismiss(); oldInteractions.setText(getResources().getString(R.string.old_interactions)); readButton.setImageResource(openMailResource); sharedPrefs.edit().putBoolean("new_notification", false).commit(); } catch (Exception e) { // don't have talon pull on } invalidateOptionsMenu(); } public void onDrawerSlide(View drawerView, float slideOffset) { super.onDrawerSlide(drawerView, slideOffset); if (!actionBar.isShowing()) { actionBar.show(); } if (translucent) { statusBar.setVisibility(View.VISIBLE); } } }; mDrawerLayout.setDrawerListener(mDrawerToggle); } catch (Exception e) { // landscape mode } actionBar.setDisplayHomeAsUpEnabled(true); actionBar.setHomeButtonEnabled(true); showMoreDrawer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (logoutLayout.getVisibility() == View.GONE) { Animation ranim = AnimationUtils.loadAnimation(context, R.anim.drawer_rotate); ranim.setFillAfter(true); showMoreDrawer.startAnimation(ranim); Animation anim = AnimationUtils.loadAnimation(context, R.anim.fade_out); anim.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { drawerList.setVisibility(View.GONE); } @Override public void onAnimationRepeat(Animation animation) { } }); anim.setDuration(300); drawerList.startAnimation(anim); Animation anim2 = AnimationUtils.loadAnimation(context, R.anim.fade_in); anim2.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { logoutLayout.setVisibility(View.VISIBLE); } @Override public void onAnimationRepeat(Animation animation) { } }); anim2.setDuration(300); logoutLayout.startAnimation(anim2); logoutVisible = true; } else { Animation ranim = AnimationUtils.loadAnimation(context, R.anim.drawer_rotate_back); ranim.setFillAfter(true); showMoreDrawer.startAnimation(ranim); Animation anim = AnimationUtils.loadAnimation(context, R.anim.fade_in); anim.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { drawerList.setVisibility(View.VISIBLE); } @Override public void onAnimationRepeat(Animation animation) { } }); anim.setDuration(300); drawerList.startAnimation(anim); Animation anim2 = AnimationUtils.loadAnimation(context, R.anim.fade_out); anim2.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { logoutLayout.setVisibility(View.GONE); } @Override public void onAnimationRepeat(Animation animation) { } }); anim2.setDuration(300); logoutLayout.startAnimation(anim2); logoutVisible = false; } } }); logoutDrawer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { logoutFromTwitter(); } }); final String sName = settings.myName; final String sScreenName = settings.myScreenName; final String backgroundUrl = settings.myBackgroundUrl; final String profilePicUrl = settings.myProfilePicUrl; final BitmapLruCache mCache = App.getInstance(context).getProfileCache(); if (!backgroundUrl.equals("")) { backgroundPic.loadImage(backgroundUrl, false, null); //ImageUtils.loadImage(context, backgroundPic, backgroundUrl, mCache); } else { backgroundPic.setImageDrawable(getResources().getDrawable(R.drawable.default_header_background)); } backgroundPic.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { try { mDrawerLayout.closeDrawer(Gravity.START); } catch (Exception e) { } new Handler().postDelayed(new Runnable() { @Override public void run() { Intent viewProfile = new Intent(context, ProfilePager.class); viewProfile.putExtra("name", sName); viewProfile.putExtra("screenname", sScreenName); viewProfile.putExtra("proPic", profilePicUrl); viewProfile.putExtra("tweetid", 0); viewProfile.putExtra("retweet", false); viewProfile.putExtra("long_click", false); context.startActivity(viewProfile); } }, 400); } }); backgroundPic.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { try { mDrawerLayout.closeDrawer(Gravity.START); } catch (Exception e) { } new Handler().postDelayed(new Runnable() { @Override public void run() { Intent viewProfile = new Intent(context, ProfilePager.class); viewProfile.putExtra("name", sName); viewProfile.putExtra("screenname", sScreenName); viewProfile.putExtra("proPic", profilePicUrl); viewProfile.putExtra("tweetid", 0); viewProfile.putExtra("retweet", false); viewProfile.putExtra("long_click", true); context.startActivity(viewProfile); } }, 400); return false; } }); try { name.setText(sName); screenName.setText("@" + sScreenName); name.setTextSize(15); screenName.setTextSize(15); } catch (Exception e) { // 7 inch tablet in portrait } try { if (settings.roundContactImages) { //profilePic.loadImage(profilePicUrl, false, null, NetworkedCacheableImageView.CIRCLE); ImageUtils.loadCircleImage(context, profilePic, profilePicUrl, mCache); } else { profilePic.loadImage(profilePicUrl, false, null); ImageUtils.loadImage(context, profilePic, profilePicUrl, mCache); } } catch (Exception e) { // empty path again } drawerList.setAdapter(adapter); drawerList.setOnItemClickListener(new MainDrawerClickListener(context, mDrawerLayout, mViewPager)); // set up for the second account int count = 0; // number of accounts logged in if (sharedPrefs.getBoolean("is_logged_in_1", false)) { count++; } if (sharedPrefs.getBoolean("is_logged_in_2", false)) { count++; } RelativeLayout secondAccount = (RelativeLayout) findViewById(R.id.second_profile); HoloTextView name2 = (HoloTextView) findViewById(R.id.name_2); HoloTextView screenname2 = (HoloTextView) findViewById(R.id.screen_name_2); NetworkedCacheableImageView proPic2 = (NetworkedCacheableImageView) findViewById(R.id.profile_pic_2); name2.setTextSize(15); screenname2.setTextSize(15); final int current = sharedPrefs.getInt("current_account", 1); // make a second account if (count == 1) { name2.setText(getResources().getString(R.string.new_account)); screenname2.setText(getResources().getString(R.string.tap_to_setup)); secondAccount.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (canSwitch) { if (current == 1) { sharedPrefs.edit().putInt("current_account", 2).commit(); } else { sharedPrefs.edit().putInt("current_account", 1).commit(); } context.sendBroadcast(new Intent("com.klinker.android.twitter.STOP_PUSH_SERVICE")); context.sendBroadcast(new Intent("com.klinker.android.twitter.MARK_POSITION")); Intent login = new Intent(context, LoginActivity.class); AppSettings.invalidate(); finish(); startActivity(login); } } }); } else { // switch accounts if (current == 1) { name2.setText(sharedPrefs.getString("twitter_users_name_2", "")); screenname2.setText("@" + sharedPrefs.getString("twitter_screen_name_2", "")); try { if (settings.roundContactImages) { //proPic2.loadImage(sharedPrefs.getString("profile_pic_url_2", ""), true, null, NetworkedCacheableImageView.CIRCLE); ImageUtils.loadCircleImage(context, proPic2, sharedPrefs.getString("profile_pic_url_2", ""), mCache); } else { //proPic2.loadImage(sharedPrefs.getString("profile_pic_url_2", ""), true, null); ImageUtils.loadImage(context, proPic2, sharedPrefs.getString("profile_pic_url_2", ""), mCache); } } catch (Exception e) { } secondAccount.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (canSwitch) { context.sendBroadcast(new Intent("com.klinker.android.twitter.STOP_PUSH_SERVICE")); context.sendBroadcast(new Intent("com.klinker.android.twitter.MARK_POSITION") .putExtra("current_account", current)); Toast.makeText(context, "Preparing to switch", Toast.LENGTH_SHORT).show(); // we want to wait a second so that the mark position broadcast will work new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(1000); } catch (Exception e) { } sharedPrefs.edit().putInt("current_account", 2).commit(); sharedPrefs.edit().remove("new_notifications").remove("new_retweets") .remove("new_favorites").remove("new_follows").commit(); AppSettings.invalidate(); finish(); Intent next = new Intent(context, MainActivity.class); startActivity(next); } }).start(); } } }); } else { name2.setText(sharedPrefs.getString("twitter_users_name_1", "")); screenname2.setText("@" + sharedPrefs.getString("twitter_screen_name_1", "")); try { if (settings.roundContactImages) { //proPic2.loadImage(sharedPrefs.getString("profile_pic_url_1", ""), true, null, NetworkedCacheableImageView.CIRCLE); ImageUtils.loadCircleImage(context, proPic2, sharedPrefs.getString("profile_pic_url_1", ""), mCache); } else { //proPic2.loadImage(sharedPrefs.getString("profile_pic_url_1", ""), true, null); ImageUtils.loadImage(context, proPic2, sharedPrefs.getString("profile_pic_url_1", ""), mCache); } } catch (Exception e) { } secondAccount.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (canSwitch) { context.sendBroadcast(new Intent("com.klinker.android.twitter.STOP_PUSH_SERVICE")); context.sendBroadcast(new Intent("com.klinker.android.twitter.MARK_POSITION") .putExtra("current_account", current)); Toast.makeText(context, "Preparing to switch", Toast.LENGTH_SHORT).show(); new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(1000); } catch (Exception e) { } sharedPrefs.edit().putInt("current_account", 1).commit(); sharedPrefs.edit().remove("new_notifications").remove("new_retweets") .remove("new_favorites").remove("new_follows").commit(); AppSettings.invalidate(); finish(); Intent next = new Intent(context, MainActivity.class); startActivity(next); } }).start(); } } }); } } statusBar = findViewById(R.id.activity_status_bar); statusBarHeight = Utils.getStatusBarHeight(context); navBarHeight = Utils.getNavBarHeight(context); try { RelativeLayout.LayoutParams statusParams = (RelativeLayout.LayoutParams) statusBar.getLayoutParams(); statusParams.height = statusBarHeight; statusBar.setLayoutParams(statusParams); } catch (Exception e) { try { LinearLayout.LayoutParams statusParams = (LinearLayout.LayoutParams) statusBar.getLayoutParams(); statusParams.height = statusBarHeight; statusBar.setLayoutParams(statusParams); } catch (Exception x) { // in the trends } } View navBarSeperater = findViewById(R.id.nav_bar_seperator); if (translucent && Utils.hasNavBar(context)) { try { RelativeLayout.LayoutParams navParams = (RelativeLayout.LayoutParams) navBarSeperater .getLayoutParams(); navParams.height = navBarHeight; navBarSeperater.setLayoutParams(navParams); } catch (Exception e) { try { LinearLayout.LayoutParams navParams = (LinearLayout.LayoutParams) navBarSeperater .getLayoutParams(); navParams.height = navBarHeight; navBarSeperater.setLayoutParams(navParams); } catch (Exception x) { // in the trends } } } if (translucent) { if (Utils.hasNavBar(context)) { View footer = new View(context); footer.setOnClickListener(null); footer.setOnLongClickListener(null); ListView.LayoutParams params = new ListView.LayoutParams(ListView.LayoutParams.MATCH_PARENT, Utils.getNavBarHeight(context)); footer.setLayoutParams(params); drawerList.addFooterView(footer); drawerList.setFooterDividersEnabled(false); } View drawerStatusBar = findViewById(R.id.drawer_status_bar); LinearLayout.LayoutParams status2Params = (LinearLayout.LayoutParams) drawerStatusBar.getLayoutParams(); status2Params.height = statusBarHeight; drawerStatusBar.setLayoutParams(status2Params); drawerStatusBar.setVisibility(View.VISIBLE); statusBar.setVisibility(View.VISIBLE); drawerStatusBar = findViewById(R.id.drawer_status_bar_2); status2Params = (LinearLayout.LayoutParams) drawerStatusBar.getLayoutParams(); status2Params.height = statusBarHeight; drawerStatusBar.setLayoutParams(status2Params); drawerStatusBar.setVisibility(View.VISIBLE); } if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE || getResources().getBoolean(R.bool.isTablet)) { actionBar.setDisplayHomeAsUpEnabled(false); } if (!settings.pushNotifications || !settings.useInteractionDrawer) { try { mDrawerLayout.setDrawerLockMode(NotificationDrawerLayout.LOCK_MODE_LOCKED_CLOSED, Gravity.END); } catch (Exception e) { // no drawer? } } else { mDrawerLayout.setDrawerRightEdgeSize(this, .1f); try { if (Build.VERSION.SDK_INT < 18 && DrawerActivity.settings.uiExtras) { View viewHeader2 = ((Activity) context).getLayoutInflater().inflate(R.layout.ab_header, null); notificationList.addHeaderView(viewHeader2, null, false); notificationList.setHeaderDividersEnabled(false); } } catch (Exception e) { // i don't know why it does this to be honest... } notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource.getInstance(context) .getUnreadCursor(DrawerActivity.settings.currentAccount)); try { notificationList.setAdapter(notificationAdapter); } catch (Exception e) { } View viewHeader = ((Activity) context).getLayoutInflater().inflate(R.layout.interactions_footer_1, null); notificationList.addFooterView(viewHeader, null, false); oldInteractions = (HoloTextView) findViewById(R.id.old_interactions_text); readButton = (ImageView) findViewById(R.id.read_button); LinearLayout footer = (LinearLayout) viewHeader.findViewById(R.id.footer); footer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (oldInteractions.getText().toString() .equals(getResources().getString(R.string.old_interactions))) { oldInteractions.setText(getResources().getString(R.string.new_interactions)); readButton.setImageResource(closedMailResource); notificationList.disableSwipeToDismiss(); notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource .getInstance(context).getCursor(DrawerActivity.settings.currentAccount)); } else { oldInteractions.setText(getResources().getString(R.string.old_interactions)); readButton.setImageResource(openMailResource); notificationList.enableSwipeToDismiss(); notificationAdapter = new InteractionsCursorAdapter(context, InteractionsDataSource .getInstance(context).getUnreadCursor(DrawerActivity.settings.currentAccount)); } notificationList.setAdapter(notificationAdapter); } }); if (DrawerActivity.translucent) { if (Utils.hasNavBar(context)) { View nav = new View(context); nav.setOnClickListener(null); nav.setOnLongClickListener(null); ListView.LayoutParams params = new ListView.LayoutParams(ListView.LayoutParams.MATCH_PARENT, Utils.getNavBarHeight(context)); nav.setLayoutParams(params); notificationList.addFooterView(nav); notificationList.setFooterDividersEnabled(false); } } notificationList.setDismissCallback(new EnhancedListView.OnDismissCallback() { @Override public EnhancedListView.Undoable onDismiss(EnhancedListView listView, int position) { Log.v("talon_interactions_delete", "position to delete: " + position); InteractionsDataSource data = InteractionsDataSource.getInstance(context); data.markRead(settings.currentAccount, position); notificationAdapter = new InteractionsCursorAdapter(context, data.getUnreadCursor(DrawerActivity.settings.currentAccount)); notificationList.setAdapter(notificationAdapter); oldInteractions.setText(getResources().getString(R.string.old_interactions)); readButton.setImageResource(openMailResource); if (notificationAdapter.getCount() == 0) { setNotificationFilled(false); } return null; } }); notificationList.enableSwipeToDismiss(); notificationList.setSwipeDirection(EnhancedListView.SwipeDirection.START); notificationList .setOnItemClickListener(new InteractionClickListener(context, mDrawerLayout, mViewPager)); } }
From source file:com.android.dialer.DialtactsFragment.java
/** * @author bbk wangchunhe// w w w.ja va2 s . c o m * @Date 2016/07/15 * add PopupWindow OnClickListener * @param popupWindow */ private void popupWindowItemSelect(final PopupWindow popupWindow) { View contentView = popupWindow.getContentView(); RelativeLayout callLogsContainer = (RelativeLayout) contentView .findViewById(R.id.dialtacts_popupwindow_all_calls_cantainer); final TextView callLogsTxt = (TextView) contentView.findViewById(R.id.dialtacts_popupwindow_all_calls_txt); final ImageView callLogsImage = (ImageView) contentView .findViewById(R.id.dialtacts_popupwindow_all_calls_image); RelativeLayout callLogMissedContainer = (RelativeLayout) contentView .findViewById(R.id.dialtacts_popupwindow_call_log_missed_container); final TextView callLogMissedTxt = (TextView) contentView .findViewById(R.id.dialtacts_popupwindow_call_log_missed_txt); final ImageView callLogMissedImage = (ImageView) contentView .findViewById(R.id.dialtacts_popupwindow_call_log_missed_image); ColorStateList colorStateListTxt = getActivity().getColorStateList(R.color.popupwindows_item_text_color); ColorStateList colorStateListImage = getActivity().getColorStateList(R.color.popupwindows_item_image_color); callLogsImage.setImageTintList(colorStateListImage); callLogMissedImage.setImageTintList(colorStateListImage); callLogsTxt.setTextColor(colorStateListTxt); callLogMissedTxt.setTextColor(colorStateListTxt); if (!callLogMissedImage.isSelected()) { callLogsImage.setSelected(true); callLogsTxt.setSelected(true); } callLogsContainer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { callLogsImage.setSelected(true); callLogsTxt.setSelected(true); callLogMissedImage.setSelected(false); callLogMissedTxt.setSelected(false); showCallLogFragment(CallLogQueryHandler.CALL_TYPE_ALL); // mActionbarNameTxt.setText(getString(R.string.all_calls)); // mDialtactsActionBarController.setActionNameAndMenu(R.string.all_calls,R.string.call_log_missed,R.string.select_call_log); Log.e(TAG, " action Name --1" + mDialtactsActionBarController.getmActionNameTxt().getText()); mDialtactsActionBarController.setActionName(getString(R.string.all_calls)); Log.e(TAG, " action Name --2" + mDialtactsActionBarController.getmActionNameTxt().getText()); mCallLogSelectPopupWindow.dismiss(); } }); callLogMissedContainer.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { callLogsImage.setSelected(false); callLogsTxt.setSelected(false); callLogMissedImage.setSelected(true); callLogMissedTxt.setSelected(true); showCallLogFragment(Calls.MISSED_TYPE); // mActionbarNameTxt.setText(getString(R.string.call_log_missed)); // mDialtactsActionBarController.setActionNameAndMenu(R.string.all_calls,R.string.call_log_missed,R.string.select_call_log); Log.e(TAG, " action Name --3" + mDialtactsActionBarController.getmActionNameTxt().getText()); mDialtactsActionBarController.setActionName(getString(R.string.call_log_missed)); Log.e(TAG, " action Name --4" + mDialtactsActionBarController.getmActionNameTxt().getText()); mCallLogSelectPopupWindow.dismiss(); } }); }
From source file:com.luseen.spacenavigation.SpaceNavigationView.java
/** * Adding given space items to content/*from w w w. j a va 2 s . com*/ * * @param leftContent to left content * @param rightContent and right content */ private void addSpaceItems(LinearLayout leftContent, LinearLayout rightContent) { /** * Removing all views for not being duplicated */ if (leftContent.getChildCount() > 0 || rightContent.getChildCount() > 0) { leftContent.removeAllViews(); rightContent.removeAllViews(); } /** * Clear spaceItemList and badgeList for not being duplicated */ spaceItemList.clear(); badgeList.clear(); /** * Getting LayoutInflater to inflate space item view from XML */ LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); for (int i = 0; i < spaceItems.size(); i++) { final int index = i; int targetWidth; if (spaceItems.size() > 2) targetWidth = contentWidth / 2; else targetWidth = contentWidth; RelativeLayout.LayoutParams textAndIconContainerParams = new RelativeLayout.LayoutParams(targetWidth, mainContentHeight); RelativeLayout textAndIconContainer = (RelativeLayout) inflater.inflate(R.layout.space_item_view, this, false); textAndIconContainer.setLayoutParams(textAndIconContainerParams); ImageView spaceItemIcon = (ImageView) textAndIconContainer.findViewById(R.id.space_icon); TextView spaceItemText = (TextView) textAndIconContainer.findViewById(R.id.space_text); RelativeLayout badgeContainer = (RelativeLayout) textAndIconContainer .findViewById(R.id.badge_container); spaceItemIcon.setImageResource(spaceItems.get(i).getItemIcon()); spaceItemText.setText(spaceItems.get(i).getItemName()); spaceItemText.setTextSize(TypedValue.COMPLEX_UNIT_PX, spaceItemTextSize); /** * Set custom font to space item textView */ if (isCustomFont) spaceItemText.setTypeface(customFont); /** * Hide item icon and show only text */ if (textOnly) Utils.changeViewVisibilityGone(spaceItemIcon); /** * Hide item text and change icon size */ ViewGroup.LayoutParams iconParams = spaceItemIcon.getLayoutParams(); if (iconOnly) { iconParams.height = spaceItemIconOnlySize; iconParams.width = spaceItemIconOnlySize; spaceItemIcon.setLayoutParams(iconParams); Utils.changeViewVisibilityGone(spaceItemText); } else { iconParams.height = spaceItemIconSize; iconParams.width = spaceItemIconSize; spaceItemIcon.setLayoutParams(iconParams); } /** * Adding space items to item list for future */ spaceItemList.add(textAndIconContainer); /** * Adding badge items to badge list for future */ badgeList.add(badgeContainer); /** * Adding sub views to left and right sides */ if (spaceItems.size() == 2 && leftContent.getChildCount() == 1) { rightContent.addView(textAndIconContainer, textAndIconContainerParams); } else if (spaceItems.size() > 2 && leftContent.getChildCount() == 2) { rightContent.addView(textAndIconContainer, textAndIconContainerParams); } else { leftContent.addView(textAndIconContainer, textAndIconContainerParams); } /** * Changing current selected item tint */ if (i == currentSelectedItem) { spaceItemText.setTextColor(activeSpaceItemColor); Utils.changeImageViewTint(spaceItemIcon, activeSpaceItemColor); } else { spaceItemText.setTextColor(inActiveSpaceItemColor); Utils.changeImageViewTint(spaceItemIcon, inActiveSpaceItemColor); } textAndIconContainer.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { updateSpaceItems(index); } }); } /** * Restore available badges from saveInstance */ restoreBadges(); }
From source file:com.giovanniterlingen.windesheim.view.Adapters.ScheduleAdapter.java
@Override public void onBindViewHolder(final ViewHolder holder, int position) { final TextView lessonName = holder.lessonName; final TextView lessonTime = holder.lessonTime; final TextView lessonRoom = holder.lessonRoom; final TextView lessonComponent = holder.lessonComponent; final RelativeLayout menuButton = holder.menuButton; final ImageView menuButtonImage = holder.menuButtonImage; final View scheduleIdentifier = holder.scheduleIdentifier; Lesson lesson = this.lessons[position]; long databaseDateStart = Long .parseLong(lesson.getDate().replaceAll("-", "") + lesson.getStartTime().replaceAll(":", "")); long databaseDateEnd = Long .parseLong(lesson.getDate().replaceAll("-", "") + lesson.getEndTime().replaceAll(":", "")); SimpleDateFormat yearMonthDayDateFormat = CalendarController.getInstance().getYearMonthDayDateTimeFormat(); long currentDate = Long.parseLong(yearMonthDayDateFormat.format(new Date())); lessonName.setText(lesson.getSubject()); lessonRoom.setText(lesson.getRoom()); lessonComponent.setText(lesson.getScheduleType() == 2 ? lesson.getClassName() : lesson.getTeacher()); lessonComponent.setSelected(true);/*from w w w. j ava 2 s.c o m*/ if (databaseDateStart <= currentDate && databaseDateEnd >= currentDate) { lessonTime.setTextColor(ContextCompat.getColor(activity, R.color.colorAccent)); lessonTime.setText( ApplicationLoader.applicationContext.getResources().getString(R.string.lesson_started)); holder.cardView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Lesson lesson = ScheduleAdapter.this.lessons[holder.getAdapterPosition()]; if (!lessonTime.getText().toString().equals(ApplicationLoader.applicationContext.getResources() .getString(R.string.lesson_started))) { TranslateAnimation animation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, -1.0f, Animation.RELATIVE_TO_SELF, 0.0f); animation.setDuration(100); lessonTime.setAnimation(animation); lessonTime.setTextColor(ContextCompat.getColor(activity, R.color.colorAccent)); lessonTime.setText(ApplicationLoader.applicationContext.getResources() .getString(R.string.lesson_started)); } else { TranslateAnimation animation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 1.0f, Animation.RELATIVE_TO_SELF, 0.0f); animation.setDuration(100); lessonTime.setAnimation(animation); String lessonTimes = lesson.getStartTime() + " - " + lesson.getEndTime(); lessonTime.setTextColor(ContextCompat.getColor(activity, R.color.colorSecondaryText)); lessonTime.setText(lessonTimes); } } }); } else if (databaseDateEnd < currentDate) { lessonTime.setTextColor(ContextCompat.getColor(activity, R.color.colorAccent)); lessonTime.setText(ApplicationLoader.applicationContext.getResources().getString(R.string.finished)); holder.cardView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Lesson lesson = ScheduleAdapter.this.lessons[holder.getAdapterPosition()]; if (!lessonTime.getText().toString().equals( ApplicationLoader.applicationContext.getResources().getString(R.string.finished))) { TranslateAnimation animation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, -1.0f, Animation.RELATIVE_TO_SELF, 0.0f); animation.setDuration(100); lessonTime.setAnimation(animation); lessonTime.setTextColor(ContextCompat.getColor(activity, R.color.colorAccent)); lessonTime.setText( ApplicationLoader.applicationContext.getResources().getString(R.string.finished)); } else { TranslateAnimation animation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 1.0f, Animation.RELATIVE_TO_SELF, 0.0f); animation.setDuration(100); lessonTime.setAnimation(animation); String lessonTimes = lesson.getStartTime() + " - " + lesson.getEndTime(); lessonTime.setTextColor(ContextCompat.getColor(activity, R.color.colorSecondaryText)); lessonTime.setText(lessonTimes); } } }); } else { String lessonTimes = lesson.getStartTime() + " - " + lesson.getEndTime(); lessonTime.setTextColor(ContextCompat.getColor(activity, R.color.colorSecondaryText)); lessonTime.setText(lessonTimes); holder.cardView.setOnClickListener(null); } menuButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { menuButtonImage.setImageDrawable( ResourcesCompat.getDrawable(activity.getResources(), R.drawable.overflow_open, null)); PopupMenu popupMenu = new PopupMenu(activity, menuButton); popupMenu.inflate(R.menu.menu_schedule); popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { public boolean onMenuItemClick(MenuItem item) { Lesson lesson = ScheduleAdapter.this.lessons[holder.getAdapterPosition()]; if (item.getItemId() == R.id.hide_lesson) { showPromptDialog(lesson.getSubject()); return true; } if (item.getItemId() == R.id.save_lesson) { showCalendarDialog(lesson.getRowId()); } return true; } }); popupMenu.setOnDismissListener(new PopupMenu.OnDismissListener() { @Override public void onDismiss(PopupMenu menu) { menuButtonImage.setImageDrawable(ResourcesCompat.getDrawable(activity.getResources(), R.drawable.overflow_normal, null)); } }); popupMenu.show(); } }); scheduleIdentifier.setBackgroundColor(ColorController.getInstance().getColorById(lesson.getScheduleId())); }