use of androidx.appcompat.widget.SwitchCompat in project SwipeRecyclerView by yanzhenjie.
the class DragSwipeListActivity method onCreate.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mHeaderView = getLayoutInflater().inflate(R.layout.layout_header_switch, mRecyclerView, false);
mRecyclerView.addHeaderView(mHeaderView);
SwitchCompat switchCompat = mHeaderView.findViewById(R.id.switch_compat);
switchCompat.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// 控制是否可以侧滑删除。
mRecyclerView.setItemViewSwipeEnabled(isChecked);
}
});
// 长按拖拽,默认关闭。
mRecyclerView.setLongPressDragEnabled(true);
// 滑动删除,默认关闭。
mRecyclerView.setItemViewSwipeEnabled(false);
}
use of androidx.appcompat.widget.SwitchCompat in project SwipeRecyclerView by yanzhenjie.
the class DragGridActivity method onCreate.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mHeaderView = getLayoutInflater().inflate(R.layout.layout_header_switch, mRecyclerView, false);
mRecyclerView.addHeaderView(mHeaderView);
SwitchCompat switchCompat = mHeaderView.findViewById(R.id.switch_compat);
switchCompat.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
mRecyclerView.setItemViewSwipeEnabled(isChecked);
}
});
// 长按拖拽,默认关闭。
mRecyclerView.setLongPressDragEnabled(true);
// 滑动删除,默认关闭。
mRecyclerView.setItemViewSwipeEnabled(false);
}
use of androidx.appcompat.widget.SwitchCompat in project Signal-Android by WhisperSystems.
the class ChatWallpaperFragment method onViewCreated.
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
viewModel = ViewModelProviders.of(requireActivity()).get(ChatWallpaperViewModel.class);
AvatarImageView portrait = view.findViewById(R.id.chat_wallpaper_preview_top_bar_portrait);
Toolbar toolbar = view.findViewById(R.id.toolbar);
ImageView chatWallpaperPreview = view.findViewById(R.id.chat_wallpaper_preview_background);
View setWallpaper = view.findViewById(R.id.chat_wallpaper_set_wallpaper);
SwitchCompat dimInNightMode = view.findViewById(R.id.chat_wallpaper_dark_theme_dims_wallpaper);
View chatWallpaperDim = view.findViewById(R.id.chat_wallpaper_dim);
TextView setChatColor = view.findViewById(R.id.chat_wallpaper_set_chat_color);
TextView resetChatColors = view.findViewById(R.id.chat_wallpaper_reset_chat_colors);
ImageView sentBubble = view.findViewById(R.id.chat_wallpaper_preview_bubble_2);
ColorizerView colorizerView = view.findViewById(R.id.colorizer);
TextView resetAllWallpaper = view.findViewById(R.id.chat_wallpaper_reset_all_wallpapers);
AppCompatImageView recvBubble = view.findViewById(R.id.chat_wallpaper_preview_bubble_1);
toolbar.setTitle(R.string.preferences__chat_color_and_wallpaper);
toolbar.setNavigationOnClickListener(nav -> {
if (!Navigation.findNavController(nav).popBackStack()) {
requireActivity().finish();
}
});
forceAspectRatioToScreenByAdjustingHeight(chatWallpaperPreview);
viewModel.getWallpaperPreviewPortrait().observe(getViewLifecycleOwner(), wallpaperPreviewPortrait -> wallpaperPreviewPortrait.applyToAvatarImageView(portrait));
viewModel.getCurrentWallpaper().observe(getViewLifecycleOwner(), wallpaper -> {
if (wallpaper.isPresent()) {
wallpaper.get().loadInto(chatWallpaperPreview);
ImageViewCompat.setImageTintList(recvBubble, ColorStateList.valueOf(ContextCompat.getColor(requireContext(), R.color.conversation_item_wallpaper_bubble_color)));
} else {
chatWallpaperPreview.setImageDrawable(null);
ImageViewCompat.setImageTintList(recvBubble, ColorStateList.valueOf(ContextCompat.getColor(requireContext(), R.color.signal_background_secondary)));
}
});
viewModel.getDimInDarkTheme().observe(getViewLifecycleOwner(), shouldDimInNightMode -> {
if (shouldDimInNightMode != dimInNightMode.isChecked()) {
isSettingDimFromViewModel = true;
dimInNightMode.setChecked(shouldDimInNightMode);
isSettingDimFromViewModel = false;
}
chatWallpaperDim.setAlpha(ChatWallpaper.FIXED_DIM_LEVEL_FOR_DARK_THEME);
chatWallpaperDim.setVisibility(shouldDimInNightMode && ThemeUtil.isDarkTheme(requireContext()) ? View.VISIBLE : View.GONE);
});
viewModel.getEnableWallpaperControls().observe(getViewLifecycleOwner(), enableWallpaperControls -> {
dimInNightMode.setEnabled(enableWallpaperControls);
dimInNightMode.setAlpha(enableWallpaperControls ? 1 : 0.5f);
});
chatWallpaperPreview.setOnClickListener(unused -> setWallpaper.performClick());
setWallpaper.setOnClickListener(unused -> SafeNavigation.safeNavigate(Navigation.findNavController(view), R.id.action_chatWallpaperFragment_to_chatWallpaperSelectionFragment));
setChatColor.setOnClickListener(unused -> SafeNavigation.safeNavigate(Navigation.findNavController(view), ChatWallpaperFragmentDirections.actionChatWallpaperFragmentToChatColorSelectionFragment(viewModel.getRecipientId())));
if (viewModel.isGlobal()) {
resetAllWallpaper.setOnClickListener(unused -> {
new MaterialAlertDialogBuilder(requireContext()).setTitle(R.string.ChatWallpaperFragment__reset_wallpaper).setMessage(R.string.ChatWallpaperFragment__would_you_like_to_override_all_wallpapers).setPositiveButton(R.string.ChatWallpaperFragment__reset_default_wallpaper, (dialog, which) -> {
viewModel.setWallpaper(null);
viewModel.setDimInDarkTheme(true);
viewModel.saveWallpaperSelection();
dialog.dismiss();
}).setNegativeButton(R.string.ChatWallpaperFragment__reset_all_wallpapers, (dialog, which) -> {
viewModel.setWallpaper(null);
viewModel.setDimInDarkTheme(true);
viewModel.resetAllWallpaper();
dialog.dismiss();
}).setNeutralButton(android.R.string.cancel, (dialog, which) -> {
dialog.dismiss();
}).show();
});
resetChatColors.setOnClickListener(unused -> {
new MaterialAlertDialogBuilder(requireContext()).setTitle(R.string.ChatWallpaperFragment__reset_chat_colors).setMessage(R.string.ChatWallpaperFragment__would_you_like_to_override_all_chat_colors).setPositiveButton(R.string.ChatWallpaperFragment__reset_default_colors, (dialog, which) -> {
viewModel.clearChatColor();
dialog.dismiss();
}).setNegativeButton(R.string.ChatWallpaperFragment__reset_all_colors, (dialog, which) -> {
viewModel.resetAllChatColors();
dialog.dismiss();
}).setNeutralButton(android.R.string.cancel, (dialog, which) -> {
dialog.dismiss();
}).show();
});
} else {
resetAllWallpaper.setText(R.string.ChatWallpaperFragment__reset_wallpaper);
resetChatColors.setText(R.string.ChatWallpaperFragment__reset_chat_color);
resetAllWallpaper.setOnClickListener(unused -> {
new MaterialAlertDialogBuilder(requireContext()).setMessage(R.string.ChatWallpaperFragment__reset_wallpaper_question).setPositiveButton(R.string.ChatWallpaperFragment__reset, (dialog, which) -> {
viewModel.setWallpaper(null);
viewModel.setDimInDarkTheme(true);
viewModel.saveWallpaperSelection();
viewModel.refreshChatColors();
}).setNegativeButton(android.R.string.cancel, (dialog, which) -> dialog.dismiss()).show();
});
resetChatColors.setOnClickListener(unused -> {
new MaterialAlertDialogBuilder(requireContext()).setMessage(R.string.ChatWallpaperFragment__reset_chat_color_question).setPositiveButton(R.string.ChatWallpaperFragment__reset, (dialog, which) -> viewModel.clearChatColor()).setNegativeButton(android.R.string.cancel, (dialog, which) -> dialog.dismiss()).show();
});
}
dimInNightMode.setOnCheckedChangeListener((buttonView, isChecked) -> {
if (!isSettingDimFromViewModel) {
viewModel.setDimInDarkTheme(isChecked);
}
});
viewModel.getCurrentChatColors().observe(getViewLifecycleOwner(), chatColors -> {
sentBubble.getDrawable().setColorFilter(chatColors.getChatBubbleColorFilter());
colorizerView.setBackground(chatColors.getChatBubbleMask());
Projection projection = Projection.relativeToViewWithCommonRoot(sentBubble, colorizerView, new Projection.Corners(ViewUtil.dpToPx(10)));
colorizerView.setProjections(Collections.singletonList(projection));
Drawable colorCircle = chatColors.asCircle();
colorCircle.setBounds(0, 0, ViewUtil.dpToPx(16), ViewUtil.dpToPx(16));
TextViewCompat.setCompoundDrawablesRelative(setChatColor, null, null, colorCircle, null);
});
sentBubble.addOnLayoutChangeListener((v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> viewModel.refreshChatColors());
}
use of androidx.appcompat.widget.SwitchCompat in project Signal-Android by WhisperSystems.
the class WallpaperCropActivity method onCreate.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
dynamicTheme.onCreate(this);
setContentView(R.layout.chat_wallpaper_crop_activity);
RecipientId recipientId = getIntent().getParcelableExtra(EXTRA_RECIPIENT_ID);
Uri inputImage = Objects.requireNonNull(getIntent().getParcelableExtra(EXTRA_IMAGE_URI));
Log.i(TAG, "Cropping wallpaper for " + (recipientId == null ? "default wallpaper" : recipientId));
WallpaperCropViewModel.Factory factory = new WallpaperCropViewModel.Factory(recipientId);
viewModel = ViewModelProviders.of(this, factory).get(WallpaperCropViewModel.class);
imageEditor = findViewById(R.id.image_editor);
View sentBubble = findViewById(R.id.preview_bubble_2);
TextView bubble2Text = findViewById(R.id.chat_wallpaper_bubble2_text);
View setWallPaper = findViewById(R.id.preview_set_wallpaper);
SwitchCompat blur = findViewById(R.id.preview_blur);
ColorizerView colorizerView = findViewById(R.id.colorizer);
setupImageEditor(inputImage);
setWallPaper.setOnClickListener(v -> setWallpaper());
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
ActionBar supportActionBar = Objects.requireNonNull(getSupportActionBar());
supportActionBar.setHomeAsUpIndicator(ContextCompat.getDrawable(this, R.drawable.ic_arrow_left_24));
supportActionBar.setDisplayHomeAsUpEnabled(true);
blur.setOnCheckedChangeListener((v, checked) -> viewModel.setBlur(checked));
viewModel.getBlur().observe(this, blurred -> {
setBlurred(blurred);
if (blurred != blur.isChecked()) {
blur.setChecked(blurred);
}
});
viewModel.getRecipient().observe(this, r -> {
if (r.getId().isUnknown()) {
bubble2Text.setText(R.string.WallpaperCropActivity__set_wallpaper_for_all_chats);
} else {
bubble2Text.setText(getString(R.string.WallpaperCropActivity__set_wallpaper_for_s, r.getDisplayName(this)));
sentBubble.getBackground().setColorFilter(r.getChatColors().getChatBubbleColorFilter());
colorizerView.setBackground(r.getChatColors().getChatBubbleMask());
}
});
sentBubble.addOnLayoutChangeListener((v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> {
colorizerView.setProjections(Collections.singletonList(Projection.relativeToViewWithCommonRoot(sentBubble, colorizerView, new Projection.Corners(ViewUtil.dpToPx(18)))));
});
}
use of androidx.appcompat.widget.SwitchCompat in project AntennaPod by AntennaPod.
the class PreferenceSwitchDialog method openDialog.
public void openDialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle(title);
LayoutInflater inflater = LayoutInflater.from(this.context);
View layout = inflater.inflate(R.layout.dialog_switch_preference, null, false);
SwitchCompat switchButton = layout.findViewById(R.id.dialogSwitch);
switchButton.setText(text);
builder.setView(layout);
builder.setPositiveButton(R.string.confirm_label, (dialog, which) -> {
if (onPreferenceChangedListener != null) {
onPreferenceChangedListener.preferenceChanged(switchButton.isChecked());
}
});
builder.setNegativeButton(R.string.cancel_label, null);
builder.create().show();
}
Aggregations