private void requestCameraPermission() { Log.w(TAG, "Write External permission is not granted. Requesting permission"); final String[] permissions = new String[]{Manifest.permission.CAMERA}; if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.CAMERA)) { ActivityCompat.requestPermissions(this, permissions, Constants.PERMISSION_REQUEST_CAMERA); } else { if (!isPermissionRequested(Constants.PREF_CAMERA_REQUESTED)) { ActivityCompat.requestPermissions(this, permissions, Constants.PERMISSION_REQUEST_CAMERA); setPermissionRequested(Constants.PREF_CAMERA_REQUESTED); } else { Snackbar snackbar = Snackbar.make(mainLayout, R.string.msg_no_camera_permission, Snackbar.LENGTH_INDEFINITE); snackbar.setAction(R.string.ok, new View.OnClickListener() { @Override public void onClick(View view) { openAppSettings(); } }); snackbar.show(); } } }
private void showSnackBar(int stringRes) { int firstVisible = layoutManager.findFirstCompletelyVisibleItemPosition(); int lastVisible = layoutManager.findLastCompletelyVisibleItemPosition(); int count = adapter.getItemCount(); boolean scroll = count > (lastVisible - firstVisible + 1); Snackbar s = Snackbar.make(list, stringRes, LENGTH_LONG); s.getView().setBackgroundResource(R.color.briar_primary); if (scroll) { OnClickListener onClick = new OnClickListener() { @Override public void onClick(View v) { list.smoothScrollToPosition(0); } }; s.setActionTextColor(ContextCompat .getColor(getContext(), R.color.briar_button_positive)); s.setAction(R.string.blogs_blog_post_scroll_to, onClick); } s.show(); }
public void checkAnswer(TextView[] paramArrayOfTextView, int paramInt) { checkTag = ((Boolean) paramArrayOfTextView[paramInt].getTag()).booleanValue(); //Check for wrong and right answer when the user makes a click. if (checkTag) { numberOfAnswersGotten++; //Show the correct message then update the question Snackbar.make(A.getRootView(), "Right", Snackbar.LENGTH_SHORT).show(); //Check the number of answers gotten. consecutive_right_answer++; updateQuestion(paramArrayOfTextView, lifo); }else{ //Decrement the life on every pick of wrong answer. life_number--; life.setText(life_number + ""); consecutive_right_answer = 0; //Show the wrong message and then update the question using a snackBar. Snackbar.make(B.getRootView(), "Wrong", Snackbar.LENGTH_SHORT).show(); updateQuestion(paramArrayOfTextView, lifo); } }
/** * Save review * @param view view where the button will be shown */ private void save(final View view) { LinearLayout ratingRestaurant = (LinearLayout) findViewById(R.id.rating_restaurant); RatingBar ratingBar = (RatingBar) ratingRestaurant.findViewById(R.id.rating_bar); EditText comment = (EditText) ratingRestaurant.findViewById(R.id.form_comment); if (ratingBar.getRating() == 0 || !isComplete()) { Snackbar.make(view, getResources().getString(R.string.no_review), Snackbar.LENGTH_LONG).show(); } else { reviewService.addDishesReview(reviews); reviewService.addRestaurantReview(orderService.getRestaurantId(order.getId()), ratingBar.getRating(), comment.getText().toString()); reviewService.deleteOrderToReview(order.getId()); finish(); } }
@Override public void onSendClick(String msg) { if (StringUtils.utf8IsTooLong(msg, listener.getMaximumMessageLength())) { Snackbar.make(message, R.string.text_too_long, LENGTH_SHORT).show(); return; } // disable button to prevent accidental double actions message.setSendButtonEnabled(false); message.hideSoftKeyboard(); msg = truncateUtf8(msg, MAX_INVITATION_MESSAGE_LENGTH); if(!listener.onButtonClick(msg)) { message.setSendButtonEnabled(true); message.showSoftKeyboard(); } }
@SuppressWarnings("ConstantConditions") @Override public void onRating(Rating rating) { // In a transaction, add the new rating and update the aggregate totals viewModel.addRating(rating).observe(this, resource -> { hideKeyboard(); if (resource.isSuccessful()) { // scroll to top Timber.d("Rating added"); binding.recyclerRatings.smoothScrollToPosition(0); } else { Timber.e(resource.error()); Snackbar.make(findViewById(android.R.id.content), "Failed to add rating", Snackbar.LENGTH_SHORT).show(); } }); }
/** * {@inheritDoc} */ @Override public void onDismissed(Snackbar snackbar, int event) { if (mAdapter.isPermanentDelete()) return; switch (event) { case DISMISS_EVENT_SWIPE: case DISMISS_EVENT_MANUAL: case DISMISS_EVENT_TIMEOUT: if (mUndoListener != null) mUndoListener.onDeleteConfirmed(mAction); mAdapter.emptyBin(); case DISMISS_EVENT_CONSECUTIVE: case DISMISS_EVENT_ACTION: default: break; } }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sign); Snackbar.make(getWindow().getDecorView(),"手机验证成功,开始注册",Snackbar.LENGTH_SHORT) .show(); uname= (EditText) findViewById(R.id.editText3); upass= (EditText) findViewById(R.id.editText4); button= (ButtonProgressBar) findViewById(R.id.registerbutton); imageView= (CircleImageView) findViewById(R.id.sign_image); Intent intent=getIntent(); phone=intent.getStringExtra("phone"); signimage(); init(); }
private void saveThumbnailAsImageFile(Bitmap thumbnail) { File imageFile = new File(FileUtil.getImageAttachmentDir(this), mImageAttachment.getImageFilename()); try { ImageUtil.saveBitmapAsJpeg(imageFile, thumbnail, IMAGE_COMPRESSION_PERCENTAGE); SnackbarUtil.showSnackbar(mContainer, SnackbarUtil.SnackbarType.ERROR, R.string.activity_edit_image_attachment_snackbar_error_image_deleted_from_device, SnackbarUtil.SnackbarDuration.LONG, null); }catch (IOException e) { BaseTransientBottomBar.BaseCallback<Snackbar> callback = new BaseTransientBottomBar.BaseCallback<Snackbar>() { @Override public void onDismissed(Snackbar transientBottomBar, int event) { super.onDismissed(transientBottomBar, event); setResult(RESULT_CANCELED); finish(); } }; SnackbarUtil.showSnackbar(mContainer, SnackbarUtil.SnackbarType.ERROR, R.string.error_unexpected, SnackbarUtil.SnackbarDuration.LONG, callback); } }
private boolean mayRequestContacts() { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { return true; } if (checkSelfPermission(READ_CONTACTS) == PackageManager.PERMISSION_GRANTED) { return true; } if (shouldShowRequestPermissionRationale(READ_CONTACTS)) { Snackbar.make(mEmailView, R.string.permission_rationale, Snackbar.LENGTH_INDEFINITE) .setAction(android.R.string.ok, new View.OnClickListener() { @Override @TargetApi(Build.VERSION_CODES.M) public void onClick(View v) { requestPermissions(new String[]{READ_CONTACTS}, REQUEST_READ_CONTACTS); } }); } else { requestPermissions(new String[]{READ_CONTACTS}, REQUEST_READ_CONTACTS); } return false; }
private void showSnack(final boolean isRationale) { final Snackbar snackbar = Snackbar.make(getWindow().getDecorView().getRootView(), "Please provide contact permission", Snackbar.LENGTH_INDEFINITE); snackbar.setAction(isRationale ? "VIEW" : "Settings", new View.OnClickListener() { @Override public void onClick(View view) { snackbar.dismiss(); if (isRationale) RunTimePermissionWrapper.handleRunTimePermission(MainActivity.this, RunTimePermissionWrapper.REQUEST_CODE.MULTIPLE_WALKTHROUGH, WALK_THROUGH); else startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), 1001); } }); snackbar.show(); }
private void setupConfirmButton() { AppCompatButton button = (AppCompatButton) mViewDetails.findViewById(R.id.confirmButton); String issueUserToken = mIssue.getUserAuthToken(); String userToken = UserAdapter.getCurrentUser().getUserAuthToken(); if (issueUserToken.equals(userToken)) { button.setAlpha(DISABLED_ALPHA); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Snackbar.make(getView(), R.string.cant_confirm_own_issue, Snackbar.LENGTH_SHORT) .show(); } }); } else { if (mIssue.getConfirmedByAuthUser()) { changeButtonStyle(button, IssueButton.UNCONFIRM); } IssueButtonListener buttonListener = new IssueButtonListener(this, mViewDetails, mIssue, IssueButton.CONFIRM, IssueButton.UNCONFIRM); button.setOnClickListener(buttonListener); } }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(view -> Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show()); DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); ActionBarDrawerToggle toggle = new ActionBarDrawerToggle( this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); drawer.addDrawerListener(toggle); toggle.syncState(); NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); navigationView.setNavigationItemSelectedListener(this); if (savedInstanceState == null) { replaceFragment(PopularFragment.newInstance(2)); } }
@Override public void onViewCreated(final View view, Bundle savedInstanceState) { mAchievementViewFragment = new AchievementViewFragment(); mAchievementViewFragment.setAchievementsFragment(this); FragmentManager fragmentManager = getChildFragmentManager(); fragmentManager.beginTransaction() .replace(R.id.achievements_container, mAchievementViewFragment) .commit(); AdapterFactory.getInstance().getAchievementAdapter(getContext()) .getAchievements(new ListAchievementsSimpleCallback() { @Override public void onSuccess(List<Achievement> achievements) { mProgressBar.setVisibility(View.GONE); mAchievementViewFragment.setAchievementsList(achievements); } @Override public void onFailure() { Snackbar.make(view, R.string.couldnt_retrieve_achievements, Snackbar.LENGTH_SHORT); } }); }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_flash); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Starting Flash Light", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); runFlashSpeedTest(); } }); }
/** * 显示下载 Snackbar * @param activity * @param message * @param isLong */ public static void showDownloadSnackbar(final Activity activity, String message, boolean isLong) { if (activity == null) { return; } View view = activity.getWindow().getDecorView().findViewById(android.R.id.content); Snackbar snackbar = Snackbar.make(view, message, isLong ? Snackbar.LENGTH_LONG : Snackbar.LENGTH_SHORT); View snackbarView = snackbar.getView(); if (snackbarView != null) { snackbarView.setBackgroundColor(ContextCompat.getColor(activity, R.color.snackbar_bg)); } snackbar.setAction("查看任务>", new View.OnClickListener() { @Override public void onClick(View v) { DownloadActivity.launch(activity, 1); } }).show(); }
/** * 添加SnackBar视图 * <p>在{@link #show()}之后调用</p> * * @param layoutId 布局文件 * @param params 布局参数 */ public static void addView(@LayoutRes final int layoutId, @NonNull final ViewGroup.LayoutParams params) { final View view = getView(); if (view != null) { view.setPadding(0, 0, 0, 0); Snackbar.SnackbarLayout layout = (Snackbar.SnackbarLayout) view; View child = LayoutInflater.from(view.getContext()).inflate(layoutId, null); layout.addView(child, -1, params); } }
private void updateToServer(RunningInfo runningInfo) { isSyncing = true; Log.d(TAG, "saveRunData: " + runningInfo.getRunId()); RunningModel.upload(username, runningInfo, new BaseModel.BaseCallback() { @Override public void onFailure(String msg) { isSyncing = false; Snackbar.make(rootLayout, msg, Snackbar.LENGTH_LONG) .setAction("重试", v -> updateToServer(runningInfo)).show(); } @Override public void onSuccess() { isSyncing = false; } }); }
/** * When the view is focused, check network state and display an error when network is unavailable. * @param hasFocus */ @Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); if (!Util.isOnline(getApplicationContext()) && hasFocus) { initTextHandler.removeCallbacks(initTextUpdater); currentTask.setText(getString(R.string.no_connection)); if (!Util.isNetEnabled(getApplicationContext())) { View.OnClickListener inputSnackbarListener = new View.OnClickListener() { @Override public void onClick(View v) { startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS)); } }; Snackbar snackbar = Snackbar.make(findViewById(R.id.splash_screen_layout), getString(R.string.please_enable_connect_message), Snackbar.LENGTH_INDEFINITE); snackbar.getView().setBackgroundColor(ContextCompat.getColor(this, R.color.redFailed)); snackbar.setAction(R.string.go_network_settings, inputSnackbarListener); snackbar.show(); } } }
@Override public void showUndoSnackbar() { Snackbar.make( getView().findViewById(R.id.root_alarm_list_fragment), getString(R.string.action_delete_item), Snackbar.LENGTH_LONG ) .setAction(R.string.action_undo, new View.OnClickListener() { @Override public void onClick(View v) { presenter.onUndoConfirmed(); } }) .addCallback(new BaseTransientBottomBar.BaseCallback<Snackbar>() { @Override public void onDismissed(Snackbar transientBottomBar, int event) { super.onDismissed(transientBottomBar, event); presenter.onSnackbarTimeout(); } }) .show(); }
private void shareScreenshot() { Bitmap bitmap = BitmapUtils.getBitmapFromView(binding.constraint); File dir = getFilesDir(); File file = new File(dir, "font-screenshot.png"); try { FileOutputStream outputStream = new FileOutputStream(file); bitmap.compress(Bitmap.CompressFormat.PNG, 100, outputStream); outputStream.close(); } catch (IOException e) { Log.e(TAG, "Failed to save screenshot"); Snackbar.make(binding.coord, R.string.failed_to_save_screenshot, Snackbar.LENGTH_SHORT).show(); return; } Uri uri = FileProvider.getUriForFile(TypesetterActivity.this, "com.bignerdranch.android.typesetter.fileprovider", file); Intent intent = new Intent(Intent.ACTION_SEND); intent.setType("image/png"); intent.putExtra(Intent.EXTRA_STREAM, uri); startActivity(intent); }
@Override public void showUndoSnackbar() { Snackbar.make( findViewById(R.id.root_list_activity), getString(R.string.action_delete_item), Snackbar.LENGTH_LONG ) .setAction(R.string.action_undo, new View.OnClickListener() { @Override public void onClick(View v) { controller.onUndoConfirmed(); } }) .addCallback(new BaseTransientBottomBar.BaseCallback<Snackbar>() { @Override public void onDismissed(Snackbar transientBottomBar, int event) { super.onDismissed(transientBottomBar, event); controller.onSnackbarTimeout(); } }) .show(); }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } }); DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); ActionBarDrawerToggle toggle = new ActionBarDrawerToggle( this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); drawer.setDrawerListener(toggle); toggle.syncState(); NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); navigationView.setNavigationItemSelectedListener(this); }
private void requestStoragePermissions() { if (ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.WRITE_EXTERNAL_STORAGE)) { // Provide an additional rationale to the user if the permission was not granted // and the user would benefit from additional context for the use of the permission. // For example if the user has previously denied the permission. Snackbar.make(mRootLayout, "Storage access permissions are required to upload/download files.", Snackbar.LENGTH_LONG) .setAction("Okay", new View.OnClickListener() { @Override public void onClick(View view) { requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, PERMISSION_WRITE_EXTERNAL_STORAGE); } }) .show(); } else { // Permission has not been granted yet. Request it directly. requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, PERMISSION_WRITE_EXTERNAL_STORAGE); } }
@Override protected void onPostExecute(Integer result) { switch (result) { case 0: // Toast.makeText(FeedbackActivity.this, "提交成功,感谢您的参与!!", Toast.LENGTH_SHORT).show(); Snackbar.make(mFeedBack,"提交成功,感谢您的反馈!", Snackbar.LENGTH_SHORT) .setCallback(new Snackbar.Callback() { @Override public void onDismissed(Snackbar snackbar, int event) { finish(); super.onDismissed(snackbar, event); } }) .show(); break; case 1: new CommonDialog(FeedbackActivity.this, "错误提示", "提交失败,请稍后再试", "确定").show(); break; case 2: new CommonDialog(FeedbackActivity.this, "错误提示", "提交失败,您还未登录", "确定").show(); break; } }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_add_note); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); // Get a support ActionBar corresponding to this toolbar ActionBar ab = getSupportActionBar(); // Enable the Up button if (ab != null) { ab.setDisplayHomeAsUpEnabled(true); } FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } }); }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sample_report); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } }); }
public void createUserOnClick(View view) { EditText username = (EditText)findViewById(R.id.usernameText); if(username.getText().toString().equals("")){ Snackbar.make(view, "Please enter a name.", Snackbar.LENGTH_LONG) .setAction("Action",null).show(); } else{ fbRef.addListenerForSingleValueEvent(listener); finish(); startActivity(new Intent(SpecialAdminUserCreationActivity.this, MenuActivity.class)); } }
private void showSnack(String message) { Snackbar snackbar = Snackbar.make(findViewById(R.id.fab), message, Snackbar.LENGTH_LONG); View sbView = snackbar.getView(); TextView textView = (TextView) sbView.findViewById(android.support.design.R.id.snackbar_text); snackbar.setDuration(10*1000); snackbar.show(); }
@Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { actionBar.setDisplayHomeAsUpEnabled(true); } if (!AppUtils.isNetworkAvailableAndConnected(this)) { Snackbar.make(findViewById(android.R.id.content), getString(R.string.network_error), Snackbar.LENGTH_LONG).show(); } }
/** * 设置Snackbar文字和背景颜色 * @param snackbar * @param messageColor * @param backgroundColor */ public static void setSnackbarColor(Snackbar snackbar, int messageColor, int backgroundColor) { View view = snackbar.getView(); if(view!=null){ view.setBackgroundColor(backgroundColor); ((TextView) view.findViewById(R.id.snackbar_text)).setTextColor(messageColor); } }
/** * 添加snackbar视图 * <p>在{@link #show()}之后调用</p> * * @param child 要添加的view * @param params 布局参数 */ public static void addView(@NonNull final View child, @NonNull final ViewGroup.LayoutParams params) { final View view = getView(); if (view != null) { view.setPadding(0, 0, 0, 0); Snackbar.SnackbarLayout layout = (Snackbar.SnackbarLayout) view; layout.addView(child, params); } }
@Override public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == R.id.save_media) { switch (mediaType) { case 1: // text DateTime now = DateTime.now(); DateTimeFormatter fmt = ISODateTimeFormat.dateTime(); JournalEntry currentEntry = new JournalEntry(); currentEntry.setCaption(entry_caption.getText().toString()); currentEntry.setType(mediaType); currentEntry.setLat(ALLENDALE_LAT); currentEntry.setLng(ALLENDATE_LNG); currentEntry.setDate(fmt.print(now)); DatabaseReference savedEntry = entriesRef.push(); savedEntry.setValue(currentEntry); Snackbar.make(entry_caption, "Your entry is saved", Snackbar.LENGTH_LONG).show(); break; case 2: // photo uploadMedia(mediaType, "image/jpeg", "photos"); break; case 3: // audio uploadMedia(mediaType, "audio/m4a", "audio"); break; case 4: // video uploadMedia(mediaType, "video/mp4", "videos"); break; } return true; } return false; }
@Override public void showError(Exception e) { if (!NetUtils.isNetworkConnected(getContext())) { Snackbar.make(recycleView, "你与我的距离,就差一个网络", Snackbar.LENGTH_SHORT).show(); } else { Snackbar.make(recycleView, "服务器出问题了,稍后再试!", Snackbar.LENGTH_SHORT).show(); } }
@Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { if (requestCode == 1) { if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { isPermissionGranted = true; Snackbar.make(findViewById(R.id.fab), "Permission was granted.", Snackbar.LENGTH_SHORT).show(); } else { isPermissionGranted = false; Snackbar.make(findViewById(R.id.fab), "Permission denied.", Snackbar.LENGTH_SHORT).show(); } } super.onRequestPermissionsResult(requestCode, permissions, grantResults); }
public static Snackbar getPermissionDeniedSnackbar(final View rootView) { Snackbar snackbar = Snackbar.make(rootView, R.string.read_permission_denied, Snackbar.LENGTH_INDEFINITE); snackbar.getView().setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { Toast.makeText(rootView.getContext(), R.string.read_permission_denied, Toast.LENGTH_SHORT).show(); return false; } }); return snackbar; }
public static void showRetrySnackBar(View view, String text, View.OnClickListener listener){ Snackbar snackbar = Snackbar.make(view, text, Snackbar.LENGTH_INDEFINITE); if (null != listener) { snackbar.setAction("RETRY", listener) .setActionTextColor(SettingsActivity.getPrimaryColor(view.getContext())); } snackbar.show(); }
private File getFile() { File photoFile = null; try { String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()).format(new Date()); String imageFileName = "JPEG_" + timeStamp + "_"; File storageDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES); photoFile = File.createTempFile(imageFileName, ".jpg", storageDir); photoPath = photoFile.getAbsolutePath(); } catch (IOException ex) { Snackbar.make(viewPager, R.string.main_error_dispatch_camera, Snackbar.LENGTH_SHORT).show(); } return photoFile; }
/** * 处理图片旋转 */ @OnClick(R.id.rotationTv) void rotation() { if (!isReady) { Snackbar.make(mStartBtn, "图片资源为空,操作不能进行", Snackbar.LENGTH_SHORT).show(); return; } Bitmap bitmap = ((BitmapDrawable) mSrcIv.getDrawable()).getBitmap(); mSrcIv.setImageBitmap(BitmapUtils.rotateBitmap(bitmap, 90f)); }
private void saveChannel(String channelId, String username) { SharedPreferences prefs = getApplicationContext() .getSharedPreferences(PREFERENCES_KEY, MODE_PRIVATE); prefs.edit().putString(CHANNEL_ID_PREF, channelId).apply(); prefs.edit().putString(USERNAME_PREF, username).apply(); Snackbar.make(findViewById(R.id.mainLayout), "Channel saved!", Snackbar.LENGTH_SHORT).show(); }