List of usage examples for android.view View getContext
@ViewDebug.CapturedViewProperty public final Context getContext()
From source file:com.actionbarsherlock.internal.app.ActionBarImpl.java
private void init(View decor) { mContext = decor.getContext(); mActionView = (ActionBarView) decor.findViewById(R.id.abs__action_bar); mContextView = (ActionBarContextView) decor.findViewById(R.id.abs__action_context_bar); mContainerView = (ActionBarContainer) decor.findViewById(R.id.abs__action_bar_container); mSplitView = (ActionBarContainer) decor.findViewById(R.id.abs__split_action_bar); if (mActionView == null || mContextView == null || mContainerView == null) { throw new IllegalStateException( getClass().getSimpleName() + " can only be used " + "with a compatible window decor layout"); }/* ww w.java 2 s .c o m*/ mActionView.setContextView(mContextView); mContextDisplayMode = mActionView.isSplitActionBar() ? CONTEXT_DISPLAY_SPLIT : CONTEXT_DISPLAY_NORMAL; // Older apps get the home button interaction enabled by default. // Newer apps need to enable it explicitly. boolean homeButtonEnabled = mContext .getApplicationInfo().targetSdkVersion < Build.VERSION_CODES.ICE_CREAM_SANDWICH; // If the homeAsUp display option is set, always enable the home button. homeButtonEnabled |= (mActionView.getDisplayOptions() & ActionBar.DISPLAY_HOME_AS_UP) != 0; setHomeButtonEnabled(homeButtonEnabled); setHasEmbeddedTabs(getResources_getBoolean(mContext, R.bool.abs__action_bar_embed_tabs)); }
From source file:com.custom.music.MusicBrowserActivity.java
private void showPupopMenu(View v) { Log.i(TAG, "showPupopMenu:BEGIN=" + v, Log.APP); if (v == null) { return;//from w ww . j a v a 2 s . co m } Context context = v.getContext(); popup = new PopupMenu(context, v); popup.inflate(R.menu.music_popup_menu); popup.setOnMenuItemClickListener(new OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { if (item.getItemId() == R.id.artistAblum) { mViewPager.setCurrentItem(ARTIST_INDEX); mCurrentTab = ARTIST_INDEX; } else if (item.getItemId() == R.id.ablum_list) { mViewPager.setCurrentItem(ALBUM_INDEX); mCurrentTab = ALBUM_INDEX; } else if (item.getItemId() == R.id.song_list) { mViewPager.setCurrentItem(SONG_INDEX); mCurrentTab = SONG_INDEX; } else if (item.getItemId() == R.id.playing_list) { mViewPager.setCurrentItem(PLAYLIST_INDEX); mCurrentTab = PLAYLIST_INDEX; } return false; } }); popup.show(); }
From source file:com.android.tv.settings.dialog.SettingsLayoutFragment.java
private void fadeIn(View v) { ObjectAnimator alphaAnimator = ObjectAnimator.ofFloat(v, "alpha", FADE_IN_ALPHA_START, FADE_IN_ALPHA_FINISH);// w w w. j a v a 2s . c o m alphaAnimator .setDuration(v.getContext().getResources().getInteger(android.R.integer.config_mediumAnimTime)); alphaAnimator.start(); }
From source file:com.hypodiabetic.happ.MainActivity.java
public void showAlgorithmJSON(View view) { Date dateVar = new Date(); Profile profileNow = new Profile(dateVar, view.getContext()); //Shows the JSON output of the selected Algorithm String rawAPSJSON = APS.rawJSON(view.getContext(), profileNow).toString(); Snackbar snackbar = Snackbar.make(view, "RAW JSON: " + rawAPSJSON, Snackbar.LENGTH_INDEFINITE); View snackbarView = snackbar.getView(); TextView textView = (TextView) snackbarView.findViewById(android.support.design.R.id.snackbar_text); textView.setMaxLines(5); //set the max lines for textview to show multiple lines snackbar.show();/*from ww w. jav a2s . c om*/ ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); clipboard.setText(rawAPSJSON); Toast.makeText(view.getContext(), "Raw JSON sent to clipboard", Toast.LENGTH_SHORT).show(); }
From source file:com.fastbootmobile.encore.app.fragments.ListenNowFragment.java
private void setupItems() { mItemsSetupThread = new Thread() { public void run() { final Context context = getActivity(); if (context == null) { Log.e(TAG, "Invalid context when generating Listen Now items!"); return; }//w w w .j a v a 2 s.c om final List<ListenNowAdapter.ListenNowItem> items = new ArrayList<>(); final ProviderAggregator aggregator = ProviderAggregator.getDefault(); final PluginsLookup plugins = PluginsLookup.getDefault(); final List<Playlist> playlists = aggregator.getAllPlaylists(); final List<Song> songs = new ArrayList<>(); // Put a card to notify of sound effects final SharedPreferences prefs = context.getSharedPreferences(PREFS, 0); if (!prefs.getBoolean(LANDCARD_SOUND_EFFECTS, false)) { // Show the "You have no custom providers" card final ListenNowAdapter.CardItem item = new ListenNowAdapter.CardItem( getString(R.string.ln_landcard_sfx_title), getString(R.string.ln_landcard_sfx_body), getString(R.string.browse), new View.OnClickListener() { @Override public void onClick(View v) { prefs.edit().putBoolean(LANDCARD_SOUND_EFFECTS, true).apply(); v.getContext() .startActivity(new Intent(v.getContext(), SettingsActivity.class)); } }, getString(R.string.ln_landcard_dismiss), new View.OnClickListener() { @Override public void onClick(View v) { prefs.edit().putBoolean(LANDCARD_SOUND_EFFECTS, true).apply(); // This item must always be the first of the list mAdapter.removeItem((ListenNowAdapter.ListenNowItem) v.getTag()); mAdapter.notifyDataSetChanged(); } }); mAdapter.addItem(item); } // Put cards for new providers Set<ProviderConnection> newPlugins = PluginsLookup.getDefault().getNewPlugins(); if (newPlugins != null) { for (final ProviderConnection plugin : newPlugins) { final ListenNowAdapter.CardItem item; if (plugin.getConfigurationActivity() == null) { item = new ListenNowAdapter.CardItem( String.format(getString(R.string.ln_landcard_plugin_installed_title), plugin.getProviderName()), getString(R.string.ln_landcard_plugin_installed_body), getString(R.string.ln_landcard_dismiss), new View.OnClickListener() { @Override public void onClick(View v) { prefs.edit().putBoolean(LANDCARD_SOUND_EFFECTS, true).apply(); // This item must always be the first of the list mAdapter.removeItem((ListenNowAdapter.ListenNowItem) v.getTag()); mAdapter.notifyDataSetChanged(); } }); } else { item = new ListenNowAdapter.CardItem( String.format(getString(R.string.ln_landcard_plugin_installed_title), plugin.getProviderName()), getString(R.string.ln_landcard_plugin_installed_body_configure), getString(R.string.ln_landcard_dismiss), new View.OnClickListener() { @Override public void onClick(View v) { prefs.edit().putBoolean(LANDCARD_SOUND_EFFECTS, true).apply(); // This item must always be the first of the list mAdapter.removeItem((ListenNowAdapter.ListenNowItem) v.getTag()); mAdapter.notifyDataSetChanged(); } }, getString(R.string.configure), new View.OnClickListener() { @Override public void onClick(View v) { mAdapter.removeItem((ListenNowAdapter.ListenNowItem) v.getTag()); mAdapter.notifyDataSetChanged(); Intent intent = new Intent(); intent.setClassName(plugin.getPackage(), plugin.getConfigurationActivity()); startActivity(intent); } }); } mAdapter.addItem(item); } PluginsLookup.getDefault().resetNewPlugins(); } // Get the list of songs first final List<ProviderConnection> providers = plugins.getAvailableProviders(); for (ProviderConnection provider : providers) { int limit = 50; int offset = 0; while (!isInterrupted()) { try { List<Song> providerSongs = provider.getBinder().getSongs(offset, limit); if (providerSongs != null) { songs.addAll(providerSongs); offset += providerSongs.size(); if (providerSongs.size() < limit) { if (DEBUG) Log.d(TAG, "Got " + providerSongs.size() + " instead of " + limit + ", assuming end of list"); break; } } else { break; } } catch (TransactionTooLargeException e) { limit -= 5; if (limit <= 0) { Log.e(TAG, "Error getting songs from " + provider.getProviderName() + ": transaction too large even with limit = 5"); break; } } catch (Exception e) { Log.e(TAG, "Error getting songs from " + provider.getProviderName() + ": " + e.getMessage()); break; } } } if (isInterrupted() || isDetached()) return; // Add a card if we have local music, but no cloud providers if (providers.size() <= PluginsLookup.BUNDLED_PROVIDERS_COUNT && songs.size() > 0) { if (!prefs.getBoolean(LANDCARD_NO_CUSTOM_PROVIDERS, false)) { // Show the "You have no custom providers" card final ListenNowAdapter.CardItem item = new ListenNowAdapter.CardItem( getString(R.string.ln_landcard_nocustomprovider_title), getString(R.string.ln_landcard_nocustomprovider_body), getString(R.string.browse), new View.OnClickListener() { @Override public void onClick(View v) { ProviderDownloadDialog.newInstance(false).show(getFragmentManager(), "DOWN"); } }, getString(R.string.ln_landcard_dismiss), new View.OnClickListener() { @Override public void onClick(View v) { prefs.edit().putBoolean(LANDCARD_NO_CUSTOM_PROVIDERS, true).apply(); // This item must always be the first of the list mAdapter.removeItem((ListenNowAdapter.ListenNowItem) v.getTag()); mAdapter.notifyDataSetChanged(); } }); items.add(item); } } if (isInterrupted() || isDetached()) return; // Add a card if there's no music at all (no songs and no playlists) if (providers.size() <= PluginsLookup.BUNDLED_PROVIDERS_COUNT && songs.size() == 0 && playlists.size() == 0) { items.add(new ListenNowAdapter.CardItem(getString(R.string.ln_card_nothing_title), getString(R.string.ln_card_nothing_body), getString(R.string.browse), new View.OnClickListener() { @Override public void onClick(View v) { ProviderDownloadDialog.newInstance(false).show(getFragmentManager(), "DOWN"); } }, getString(R.string.configure), new View.OnClickListener() { public void onClick(View v) { ((MainActivity) context).openSection(MainActivity.SECTION_SETTINGS); } })); items.add(new ListenNowAdapter.CardItem(getString(R.string.ln_card_nothinghint_title), getString(R.string.ln_card_nothinghint_body), null, null)); } if (isInterrupted() || isDetached()) return; // Add the "Recently played" section if we have recent tracks final ListenLogger logger = new ListenLogger(context); List<ListenLogger.LogEntry> logEntries = logger.getEntries(50); if (logEntries.size() > 0 && !isDetached()) { items.add(new ListenNowAdapter.SectionHeaderItem(getString(R.string.ln_section_recents), R.drawable.ic_nav_history_active, getString(R.string.more), new View.OnClickListener() { @Override public void onClick(View v) { ((MainActivity) context).openSection(MainActivity.SECTION_HISTORY); } })); int i = 0; List<ListenNowAdapter.ItemCardItem> itemsCouple = new ArrayList<>(); for (ListenLogger.LogEntry entry : logEntries) { if (i == 4) { // Stop here, add remaining item if (itemsCouple.size() > 0) { for (ListenNowAdapter.ItemCardItem item : itemsCouple) { items.add(item); } } break; } Song song = aggregator.retrieveSong(entry.getReference(), entry.getIdentifier()); if (song != null) { int type = Utils.getRandom(2); if (song.getAlbum() != null && (type == 0 || type == 1 && song.getArtist() == null)) { Album album = aggregator.retrieveAlbum(song.getAlbum(), song.getProvider()); if (album != null) { itemsCouple.add(new ListenNowAdapter.ItemCardItem(album)); ++i; } } else if (song.getArtist() != null) { Artist artist = aggregator.retrieveArtist(song.getArtist(), song.getProvider()); if (artist != null) { itemsCouple.add(new ListenNowAdapter.ItemCardItem(artist)); ++i; } } } if (itemsCouple.size() == 2) { ListenNowAdapter.CardRowItem row = new ListenNowAdapter.CardRowItem(itemsCouple.get(0), itemsCouple.get(1)); items.add(row); itemsCouple.clear(); } } } if (isInterrupted() || isDetached()) return; // Add playlists section items.add(new ListenNowAdapter.SectionHeaderItem(getString(R.string.ln_section_playlists), R.drawable.ic_nav_playlist_active, getString(R.string.browse), new View.OnClickListener() { @Override public void onClick(View v) { ((MainActivity) context).openSection(MainActivity.SECTION_PLAYLISTS); } })); if (playlists != null && playlists.size() > 0) { int i = 0; List<ListenNowAdapter.ItemCardItem> itemsCouple = new ArrayList<>(); for (Playlist playlist : playlists) { if (i == 4) { // Stop here, add remaining item if (itemsCouple.size() > 0) { for (ListenNowAdapter.ItemCardItem item : itemsCouple) { items.add(item); } } break; } if (playlist != null) { ListenNowAdapter.ItemCardItem item = new ListenNowAdapter.ItemCardItem(playlist); itemsCouple.add(item); ++i; } if (itemsCouple.size() == 2) { ListenNowAdapter.CardRowItem row = new ListenNowAdapter.CardRowItem(itemsCouple.get(0), itemsCouple.get(1)); items.add(row); itemsCouple.clear(); } } } if (isInterrupted() || isDetached()) return; // Add automix section items.add(new ListenNowAdapter.SectionHeaderItem(getString(R.string.lb_section_automixes), R.drawable.ic_nav_automix_active, getString(R.string.create), new View.OnClickListener() { @Override public void onClick(View v) { ((MainActivity) context).openSection(MainActivity.SECTION_AUTOMIX); } })); List<AutoMixBucket> buckets = AutoMixManager.getDefault().getBuckets(); if (buckets == null || buckets.size() == 0) { items.add(new ListenNowAdapter.GetStartedItem(getString(R.string.ln_automix_getstarted_body), getString(R.string.ln_action_getstarted), new View.OnClickListener() { @Override public void onClick(View v) { ((MainActivity) context) .onNavigationDrawerItemSelected(MainActivity.SECTION_AUTOMIX); } })); } else { for (final AutoMixBucket bucket : buckets) { items.add(new ListenNowAdapter.SimpleItem(bucket.getName(), new View.OnClickListener() { @Override public void onClick(View v) { new Thread() { public void run() { AutoMixManager.getDefault().startPlay(bucket); } }.start(); } })); } } if (isInterrupted() || isDetached()) return; mHandler.post(new Runnable() { public void run() { for (ListenNowAdapter.ListenNowItem item : items) { mAdapter.addItem(item); } mAdapter.notifyDataSetChanged(); } }); } }; mItemsSetupThread.start(); }
From source file:com.df.app.carCheck.VehicleInfoLayout.java
/** * edit/*from w w w. j a v a2 s. com*/ */ private void showListDialog(int titleId, ArrayAdapter<String> adapter, final Handler handler) { View view1 = ((Activity) getContext()).getLayoutInflater().inflate(R.layout.popup_layout, null); final AlertDialog dialog = new AlertDialog.Builder(getContext()).setView(view1).create(); TableLayout contentArea = (TableLayout) view1.findViewById(R.id.contentArea); final ListView listView = new ListView(view1.getContext()); listView.setAdapter(adapter); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { handler.sendEmptyMessage(i); dialog.dismiss(); } }); contentArea.addView(listView); setTextView(view1, R.id.title, getResources().getString(titleId)); dialog.show(); }
From source file:com.flexvdi.androidlauncher.LoginActivity.java
@Override public void onCreate(Bundle icicle) { super.onCreate(icicle); mContext = this; try {/*from w w w . ja v a 2s .co m*/ GStreamer.init(mContext); } catch (Exception e) { Log.e(TAG, "Can't initialize GStreamer" + e.getMessage()); finish(); } settings = getSharedPreferences("flexVDI", MODE_PRIVATE); settingsEditor = settings.edit(); /* Uncomment this for clearing preferences (useful when debugging) */ //settingsEditor.clear(); //settingsEditor.apply(); //settingsEditor.commit(); requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); setContentView(R.layout.activity_login); textUser = (EditText) findViewById(R.id.textUser); textServer = (EditText) findViewById(R.id.textServer); textPassword = (EditText) findViewById(R.id.textPassword); goButton = (Button) findViewById(R.id.buttonGO); goButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { ConnectivityManager cm = (ConnectivityManager) mContext .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo activeNetwork = cm.getActiveNetworkInfo(); boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting(); if (!isConnected) { Toast.makeText(view.getContext(), getResources().getString(R.string.no_network), Toast.LENGTH_LONG).show(); return; } if (checkBoxGenericSpice.isChecked()) { String userField = textUser.getText().toString(); if (userField.length() == 0 || !userField.contains(":")) { Toast.makeText(view.getContext(), getResources().getString(R.string.invalid_spice_server), Toast.LENGTH_LONG).show(); return; } String spiceAddress = userField.substring(0, userField.indexOf(":")); String spicePort = userField.substring(userField.indexOf(":") + 1); if (spiceAddress.length() == 0 || spicePort.length() == 0) { Toast.makeText(view.getContext(), getResources().getString(R.string.invalid_spice_server), Toast.LENGTH_LONG).show(); return; } String spicePassword = textPassword.getText().toString(); settingsEditor.putBoolean("enableSound", checkBoxEnableSound.isChecked()); settingsEditor.putBoolean("staticResolution", checkBoxStaticResolution.isChecked()); settingsEditor.putBoolean("genericSpice", checkBoxGenericSpice.isChecked()); settingsEditor.putString("flexServerName", textServer.getText().toString()); settingsEditor.putString("spice_address", spiceAddress); settingsEditor.putString("spice_port", spicePort); settingsEditor.putString("spice_password", spicePassword); settingsEditor.putBoolean("use_ws", false); settingsEditor.apply(); settingsEditor.commit(); startMainActivity(); } else { if (textServer.getText().length() == 0) { Toast.makeText(view.getContext(), getResources().getString(R.string.empty_flexvdi_server), Toast.LENGTH_LONG).show(); } else { if (textUser.getText().length() != 0 && textPassword.getText().length() != 0) { new RequestTask().execute("authmode", textServer.getText().toString(), textUser.getText().toString(), textPassword.getText().toString(), ""); } else Toast.makeText(view.getContext(), getResources().getString(R.string.empty_credentials), Toast.LENGTH_LONG).show(); } } } }); // The advanced settings button. checkBoxAdvancedOptions = (CheckBox) findViewById(R.id.checkBoxAdvancedSettings); layoutAdvancedOptions = (LinearLayout) findViewById(R.id.layoutAdvancedOptions2); checkBoxAdvancedOptions.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton arg0, boolean checked) { if (checked) layoutAdvancedOptions.setVisibility(View.VISIBLE); else layoutAdvancedOptions.setVisibility(View.GONE); } }); textServer.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View field, boolean hasFocus) { if (!hasFocus && checkBoxGenericSpice.isChecked()) { if (textUser.getText().toString().length() == 0) { textUser.setText(textServer.getText()); } } } }); checkBoxEnableSound = (CheckBox) findViewById(R.id.checkBoxEnableSound); if (settings.getBoolean("enableSound", true)) { checkBoxEnableSound.setChecked(true); } else { checkBoxEnableSound.setChecked(false); } if (!settings.contains("staticResolution")) { Display display = getWindowManager().getDefaultDisplay(); Point size = new Point(); display.getSize(size); if ((size.x + size.y) > 2340) { /* 2340 = 1440+900 */ settingsEditor.putBoolean("staticResolution", true); } else { settingsEditor.putBoolean("staticResolution", false); } settingsEditor.apply(); settingsEditor.commit(); } checkBoxStaticResolution = (CheckBox) findViewById(R.id.checkBoxStaticResolution); if (settings.getBoolean("staticResolution", true)) { checkBoxStaticResolution.setChecked(true); } else { checkBoxStaticResolution.setChecked(false); } checkBoxGenericSpice = (CheckBox) findViewById(R.id.checkBoxGenericSpice); if (settings.getBoolean("genericSpice", false)) { checkBoxGenericSpice.setChecked(true); checkBoxAdvancedOptions.setChecked(true); layoutAdvancedOptions.setVisibility(View.VISIBLE); if (settings.contains("flexServerName")) { textServer.setText(settings.getString("flexServerName", "")); textUser.setText(settings.getString("flexServerName", "")); textServer.setHint(getResources().getString(R.string.spice_server)); textUser.setHint(getResources().getString(R.string.spice_server_port)); } } else { checkBoxGenericSpice.setChecked(false); if (settings.contains("flexServerName")) { textServer.setText(settings.getString("flexServerName", "")); layoutAdvancedOptions.setVisibility(View.GONE); } else { textServer.setText("manager.flexvdi.com"); checkBoxAdvancedOptions.setChecked(true); } } checkBoxGenericSpice.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton arg0, boolean checked) { if (checked) { textServer.setHint(getResources().getString(R.string.spice_server)); textUser.setHint(getResources().getString(R.string.spice_server_port)); String server = textServer.getText().toString(); if (server.length() != 0) { if (server.contains(":")) { textUser.setText(server); } else { textUser.setText(server + ":5900"); textServer.setText(server + ":5900"); } } } else { textServer.setHint(getResources().getString(R.string.flexvdi_server)); String server = textServer.getText().toString(); if (server.length() != 0 && server.contains(":")) { textServer.setText(server.substring(0, server.indexOf(":"))); } textUser.setText(""); textUser.setHint(getResources().getString(R.string.user)); } } }); deviceID = Settings.Secure.getString(mContext.getContentResolver(), Settings.Secure.ANDROID_ID); textViewDeviceID = (TextView) findViewById(R.id.textViewDeviceID); textViewDeviceID.setText("ID: " + deviceID + " (" + BuildConfig.VERSION_NAME + ")"); try { HttpsURLConnection.setDefaultHostnameVerifier(new NullHostNameVerifier()); SSLContext context = SSLContext.getInstance("TLS"); context.init(null, new X509TrustManager[] { new NullX509TrustManager() }, new SecureRandom()); HttpsURLConnection.setDefaultSSLSocketFactory(context.getSocketFactory()); } catch (NoSuchAlgorithmException nsae) { Log.e(TAG, nsae.getMessage()); } catch (KeyManagementException kme) { Log.e(TAG, kme.getMessage()); } }
From source file:com.facebook.litho.MountState.java
private static void unsetViewBackground(View view, ViewNodeInfo viewNodeInfo) { final Reference<Drawable> backgroundReference = viewNodeInfo.getBackground(); if (backgroundReference != null) { Reference.release((ComponentContext) view.getContext(), view.getBackground(), backgroundReference); setBackgroundCompat(view, null); }// w w w . j a v a 2 s. c om }
From source file:com.androidinspain.deskclock.alarms.dataadapter.ExpandedAlarmViewHolder.java
private ExpandedAlarmViewHolder(View itemView, boolean hasVibrator) { super(itemView); mHasVibrator = hasVibrator;//from w ww.j a v a 2 s. c o m delete = (TextView) itemView.findViewById(R.id.delete); repeat = (CheckBox) itemView.findViewById(R.id.repeat_onoff); vibrate = (CheckBox) itemView.findViewById(R.id.vibrate_onoff); ringtone = (TextView) itemView.findViewById(R.id.choose_ringtone); editLabel = (TextView) itemView.findViewById(R.id.edit_label); repeatDays = (LinearLayout) itemView.findViewById(R.id.repeat_days); hairLine = itemView.findViewById(R.id.hairline); final Context context = itemView.getContext(); itemView.setBackground(new LayerDrawable( new Drawable[] { ContextCompat.getDrawable(context, R.drawable.alarm_background_expanded), ThemeUtils.resolveDrawable(context, R.attr.selectableItemBackground) })); // Build button for each day. final LayoutInflater inflater = LayoutInflater.from(context); final List<Integer> weekdays = DataModel.getDataModel().getWeekdayOrder().getCalendarDays(); for (int i = 0; i < 7; i++) { final View dayButtonFrame = inflater.inflate(R.layout.day_button, repeatDays, false /* attachToRoot */); final CompoundButton dayButton = (CompoundButton) dayButtonFrame.findViewById(R.id.day_button_box); final int weekday = weekdays.get(i); dayButton.setText(UiDataModel.getUiDataModel().getShortWeekday(weekday)); dayButton.setContentDescription(UiDataModel.getUiDataModel().getLongWeekday(weekday)); repeatDays.addView(dayButtonFrame); dayButtons[i] = dayButton; } // Cannot set in xml since we need compat functionality for API < 21 final Drawable labelIcon = Utils.getVectorDrawable(context, R.drawable.ic_label); editLabel.setCompoundDrawablesRelativeWithIntrinsicBounds(labelIcon, null, null, null); final Drawable deleteIcon = Utils.getVectorDrawable(context, R.drawable.ic_delete_small); delete.setCompoundDrawablesRelativeWithIntrinsicBounds(deleteIcon, null, null, null); // Collapse handler itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Events.sendAlarmEvent(R.string.action_collapse_implied, R.string.label_deskclock); getItemHolder().collapse(); } }); arrow.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Events.sendAlarmEvent(R.string.action_collapse, R.string.label_deskclock); getItemHolder().collapse(); } }); // Edit time handler clock.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { getAlarmTimeClickHandler().onClockClicked(getItemHolder().item); } }); // Edit label handler editLabel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { getAlarmTimeClickHandler().onEditLabelClicked(getItemHolder().item); } }); // Vibrator checkbox handler vibrate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { getAlarmTimeClickHandler().setAlarmVibrationEnabled(getItemHolder().item, ((CheckBox) v).isChecked()); } }); // Ringtone editor handler ringtone.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { getAlarmTimeClickHandler().onRingtoneClicked(context, getItemHolder().item); } }); // Delete alarm handler delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { getAlarmTimeClickHandler().onDeleteClicked(getItemHolder()); v.announceForAccessibility(context.getString(R.string.alarm_deleted)); } }); // Repeat checkbox handler repeat.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { final boolean checked = ((CheckBox) view).isChecked(); getAlarmTimeClickHandler().setAlarmRepeatEnabled(getItemHolder().item, checked); getItemHolder().notifyItemChanged(ANIMATE_REPEAT_DAYS); } }); // Day buttons handler for (int i = 0; i < dayButtons.length; i++) { final int buttonIndex = i; dayButtons[i].setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { final boolean isChecked = ((CompoundButton) view).isChecked(); getAlarmTimeClickHandler().setDayOfWeekEnabled(getItemHolder().item, isChecked, buttonIndex); } }); } itemView.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_NO); }