mirror of
https://github.com/SimpleMobileTools/Simple-Camera.git
synced 2025-03-15 16:10:07 +01:00
add camera timer
This commit is contained in:
parent
aee23700d8
commit
772ffb21ad
@ -8,6 +8,7 @@ import android.graphics.Bitmap
|
||||
import android.hardware.SensorManager
|
||||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import android.os.CountDownTimer
|
||||
import android.provider.MediaStore
|
||||
import android.view.*
|
||||
import android.widget.LinearLayout
|
||||
@ -33,15 +34,17 @@ import com.simplemobiletools.camera.implementations.CameraXInitializer
|
||||
import com.simplemobiletools.camera.implementations.CameraXPreviewListener
|
||||
import com.simplemobiletools.camera.interfaces.MyPreview
|
||||
import com.simplemobiletools.camera.models.ResolutionOption
|
||||
import com.simplemobiletools.camera.models.TimerMode
|
||||
import com.simplemobiletools.camera.views.FocusCircleView
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.helpers.*
|
||||
import com.simplemobiletools.commons.models.Release
|
||||
import kotlinx.android.synthetic.main.activity_main.*
|
||||
import kotlinx.android.synthetic.main.layout_flash.*
|
||||
import kotlinx.android.synthetic.main.layout_top.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
import kotlin.math.abs
|
||||
import kotlinx.android.synthetic.main.activity_main.*
|
||||
import kotlinx.android.synthetic.main.layout_flash.*
|
||||
import kotlinx.android.synthetic.main.layout_timer.*
|
||||
import kotlinx.android.synthetic.main.layout_top.*
|
||||
|
||||
class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, CameraXPreviewListener {
|
||||
private companion object {
|
||||
@ -53,6 +56,7 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
|
||||
private lateinit var defaultScene: Scene
|
||||
private lateinit var flashModeScene: Scene
|
||||
private lateinit var timerScene: Scene
|
||||
private lateinit var mOrientationEventListener: OrientationEventListener
|
||||
private lateinit var mFocusCircleView: FocusCircleView
|
||||
private var mPreview: MyPreview? = null
|
||||
@ -60,6 +64,7 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
private var mPreviewUri: Uri? = null
|
||||
private var mIsHardwareShutterHandled = false
|
||||
private var mLastHandledOrientation = 0
|
||||
private var countDownTimer: CountDownTimer? = null
|
||||
|
||||
private val tabSelectedListener = object : TabSelectedListener {
|
||||
override fun onTabSelected(tab: TabLayout.Tab) {
|
||||
@ -140,7 +145,7 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
val isInPhotoMode = isInPhotoMode()
|
||||
setupPreviewImage(isInPhotoMode)
|
||||
mFocusCircleView.setStrokeColor(getProperPrimaryColor())
|
||||
toggleBottomButtons(enabled = true)
|
||||
toggleActionButtons(enabled = true)
|
||||
mOrientationEventListener.enable()
|
||||
}
|
||||
|
||||
@ -155,6 +160,7 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
override fun onPause() {
|
||||
super.onPause()
|
||||
window.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
|
||||
cancelTimer()
|
||||
if (!hasStorageAndCameraPermissions() || isAskingPermissions) {
|
||||
return
|
||||
}
|
||||
@ -283,6 +289,7 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
initModeSwitcher()
|
||||
defaultScene = Scene(top_options, default_icons)
|
||||
flashModeScene = Scene(top_options, flash_toggle_group)
|
||||
timerScene = Scene(top_options, timer_toggle_group)
|
||||
|
||||
WindowCompat.setDecorFitsSystemWindows(window, false)
|
||||
ViewCompat.setOnApplyWindowInsetsListener(view_holder) { _, windowInsets ->
|
||||
@ -323,6 +330,7 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
|
||||
setupPreviewImage(true)
|
||||
initFlashModeTransitionNames()
|
||||
initTimerModeTransitionNames()
|
||||
|
||||
if (isThirdPartyIntent) {
|
||||
hideIntentButtons()
|
||||
@ -337,10 +345,26 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
flash_always_on.transitionName = "$baseName$FLASH_ALWAYS_ON"
|
||||
}
|
||||
|
||||
private fun initTimerModeTransitionNames() {
|
||||
val baseName = getString(R.string.toggle_timer)
|
||||
timer_off.transitionName = "$baseName${TimerMode.OFF.name}"
|
||||
timer_3s.transitionName = "$baseName${TimerMode.TIMER_3.name}"
|
||||
timer_5s.transitionName = "$baseName${TimerMode.TIMER_5.name}"
|
||||
timer_10_s.transitionName = "$baseName${TimerMode.TIMER_10.name}"
|
||||
}
|
||||
|
||||
private fun initButtons() {
|
||||
timer_text.setFactory { layoutInflater.inflate(R.layout.timer_text, null) }
|
||||
toggle_camera.setOnClickListener { mPreview!!.toggleFrontBackCamera() }
|
||||
last_photo_video_preview.setOnClickListener { showLastMediaPreview() }
|
||||
toggle_flash.setOnClickListener { mPreview!!.handleFlashlightClick() }
|
||||
toggle_timer.setOnClickListener {
|
||||
val transitionSet = createTransition()
|
||||
TransitionManager.go(timerScene, transitionSet)
|
||||
timer_toggle_group.beVisible()
|
||||
timer_toggle_group.check(config.timerMode.getTimerModeResId())
|
||||
timer_toggle_group.children.forEach { setButtonColors(it as MaterialButton) }
|
||||
}
|
||||
shutter.setOnClickListener { shutterPressed() }
|
||||
|
||||
settings.setShadowIcon(R.drawable.ic_settings_vector)
|
||||
@ -359,6 +383,30 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
|
||||
flash_always_on.setShadowIcon(R.drawable.ic_flashlight_vector)
|
||||
flash_always_on.setOnClickListener { selectFlashMode(FLASH_ALWAYS_ON) }
|
||||
|
||||
timer_off.setShadowIcon(R.drawable.ic_timer_off_vector)
|
||||
timer_off.setOnClickListener { selectTimerMode(TimerMode.OFF) }
|
||||
|
||||
timer_3s.setShadowIcon(R.drawable.ic_timer_3_vector)
|
||||
timer_3s.setOnClickListener { selectTimerMode(TimerMode.TIMER_3) }
|
||||
|
||||
timer_5s.setShadowIcon(R.drawable.ic_timer_5_vector)
|
||||
timer_5s.setOnClickListener { selectTimerMode(TimerMode.TIMER_5) }
|
||||
|
||||
timer_10_s.setShadowIcon(R.drawable.ic_timer_10_vector)
|
||||
timer_10_s.setOnClickListener { selectTimerMode(TimerMode.TIMER_10) }
|
||||
setTimerModeIcon(config.timerMode)
|
||||
}
|
||||
|
||||
private fun selectTimerMode(timerMode: TimerMode) {
|
||||
config.timerMode = timerMode
|
||||
setTimerModeIcon(timerMode)
|
||||
closeOptions()
|
||||
}
|
||||
|
||||
private fun setTimerModeIcon(timerMode: TimerMode) {
|
||||
toggle_timer.setShadowIcon(timerMode.getTimerModeDrawableRes())
|
||||
toggle_timer.transitionName = "${getString(R.string.toggle_timer)}${timerMode.name}"
|
||||
}
|
||||
|
||||
@SuppressLint("ClickableViewAccessibility")
|
||||
@ -426,15 +474,26 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
}
|
||||
|
||||
private fun shutterPressed() {
|
||||
if (isInPhotoMode()) {
|
||||
toggleBottomButtons(enabled = false)
|
||||
change_resolution.isEnabled = true
|
||||
mPreview?.tryTakePicture()
|
||||
if (countDownTimer != null) {
|
||||
cancelTimer()
|
||||
} else if (isInPhotoMode()) {
|
||||
val timerMode = config.timerMode
|
||||
if (timerMode == TimerMode.OFF) {
|
||||
mPreview?.tryTakePicture()
|
||||
} else {
|
||||
scheduleTimer(timerMode)
|
||||
}
|
||||
} else {
|
||||
mPreview?.toggleRecording()
|
||||
}
|
||||
}
|
||||
|
||||
private fun cancelTimer() {
|
||||
countDownTimer?.cancel()
|
||||
countDownTimer = null
|
||||
resetViewsOnTimerFinish()
|
||||
}
|
||||
|
||||
private fun launchSettings() {
|
||||
val intent = Intent(applicationContext, SettingsActivity::class.java)
|
||||
startActivity(intent)
|
||||
@ -442,12 +501,16 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
|
||||
override fun onInitPhotoMode() {
|
||||
shutter.setImageResource(R.drawable.ic_shutter_animated)
|
||||
toggle_timer.beVisible()
|
||||
toggle_timer.fadeIn()
|
||||
setupPreviewImage(true)
|
||||
selectPhotoTab()
|
||||
}
|
||||
|
||||
override fun onInitVideoMode() {
|
||||
shutter.setImageResource(R.drawable.ic_video_rec_animated)
|
||||
toggle_timer.fadeOut()
|
||||
toggle_timer.beGone()
|
||||
setupPreviewImage(false)
|
||||
selectVideoTab()
|
||||
}
|
||||
@ -556,10 +619,19 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
toggle_camera.setImageResource(if (frontCamera) R.drawable.ic_camera_rear_vector else R.drawable.ic_camera_front_vector)
|
||||
}
|
||||
|
||||
override fun toggleBottomButtons(enabled: Boolean) {
|
||||
override fun onPhotoCaptureStart() {
|
||||
toggleActionButtons(enabled = false)
|
||||
}
|
||||
|
||||
override fun onPhotoCaptureEnd() {
|
||||
toggleActionButtons(enabled = true)
|
||||
}
|
||||
|
||||
private fun toggleActionButtons(enabled: Boolean) {
|
||||
runOnUiThread {
|
||||
shutter.isClickable = enabled
|
||||
preview_view.isEnabled = enabled
|
||||
change_resolution.isEnabled = enabled
|
||||
toggle_camera.isClickable = enabled
|
||||
toggle_flash.isClickable = enabled
|
||||
}
|
||||
@ -656,12 +728,13 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
|
||||
private fun closeOptions(): Boolean {
|
||||
if (mediaSizeToggleGroup?.isVisible() == true ||
|
||||
flash_toggle_group.isVisible()
|
||||
flash_toggle_group.isVisible() || timer_toggle_group.isVisible()
|
||||
) {
|
||||
val transitionSet = createTransition()
|
||||
TransitionManager.go(defaultScene, transitionSet)
|
||||
mediaSizeToggleGroup?.beGone()
|
||||
flash_toggle_group.beGone()
|
||||
timer_toggle_group.beGone()
|
||||
default_icons.beVisible()
|
||||
return true
|
||||
}
|
||||
@ -768,6 +841,30 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
|
||||
}
|
||||
}
|
||||
|
||||
private fun scheduleTimer(timerMode: TimerMode) {
|
||||
top_options.fadeOut()
|
||||
shutter.setImageState(intArrayOf(R.attr.state_timer_cancel), true)
|
||||
timer_text.beVisible()
|
||||
countDownTimer = object : CountDownTimer(timerMode.millisInFuture, 1000) {
|
||||
override fun onTick(millisUntilFinished: Long) {
|
||||
mPreview!!.toggleFlash()
|
||||
val seconds = (TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished) + 1).toString()
|
||||
timer_text.setText(seconds)
|
||||
}
|
||||
|
||||
override fun onFinish() {
|
||||
cancelTimer()
|
||||
mPreview!!.tryTakePicture()
|
||||
}
|
||||
}.start()
|
||||
}
|
||||
|
||||
private fun resetViewsOnTimerFinish() {
|
||||
top_options.fadeIn()
|
||||
timer_text.beGone()
|
||||
shutter.setImageState(intArrayOf(-R.attr.state_timer_cancel), true)
|
||||
}
|
||||
|
||||
private fun checkWhatsNewDialog() {
|
||||
arrayListOf<Release>().apply {
|
||||
add(Release(33, R.string.release_33))
|
||||
|
@ -4,6 +4,7 @@ import android.content.Context
|
||||
import android.os.Environment
|
||||
import androidx.camera.core.CameraSelector
|
||||
import com.simplemobiletools.camera.models.CaptureMode
|
||||
import com.simplemobiletools.camera.models.TimerMode
|
||||
import com.simplemobiletools.commons.helpers.BaseConfig
|
||||
import java.io.File
|
||||
|
||||
@ -75,4 +76,8 @@ class Config(context: Context) : BaseConfig(context) {
|
||||
get() = CaptureMode.values()[prefs.getInt(CAPTURE_MODE, CaptureMode.MINIMIZE_LATENCY.ordinal)]
|
||||
set(captureMode) = prefs.edit().putInt(CAPTURE_MODE, captureMode.ordinal).apply()
|
||||
|
||||
var timerMode: TimerMode
|
||||
get() = TimerMode.values().getOrNull(prefs.getInt(TIMER_MODE, TimerMode.OFF.ordinal)) ?: TimerMode.OFF
|
||||
set(timerMode) = prefs.edit().putInt(TIMER_MODE, timerMode.ordinal).apply()
|
||||
|
||||
}
|
||||
|
@ -20,6 +20,7 @@ const val FRONT_VIDEO_RESOLUTION_INDEX = "front_video_resolution_index_3"
|
||||
const val SAVE_PHOTO_METADATA = "save_photo_metadata"
|
||||
const val PHOTO_QUALITY = "photo_quality"
|
||||
const val CAPTURE_MODE = "capture_mode"
|
||||
const val TIMER_MODE = "timer_mode"
|
||||
|
||||
const val FLASH_OFF = 0
|
||||
const val FLASH_ON = 1
|
||||
|
@ -28,6 +28,7 @@ class MediaActionSound(private val context: Context) {
|
||||
)
|
||||
private const val TAG = "MediaActionSound"
|
||||
const val SHUTTER_CLICK = 0
|
||||
const val FOCUS_COMPLETE = 1
|
||||
const val START_VIDEO_RECORDING = 2
|
||||
const val STOP_VIDEO_RECORDING = 3
|
||||
private const val STATE_NOT_LOADED = 0
|
||||
|
@ -23,6 +23,10 @@ class MediaSoundHelper(context: Context) {
|
||||
mediaActionSound.play(MediaActionSound.STOP_VIDEO_RECORDING)
|
||||
}
|
||||
|
||||
fun playFocusCompleteSound() {
|
||||
mediaActionSound.play(MediaActionSound.FOCUS_COMPLETE)
|
||||
}
|
||||
|
||||
fun release() {
|
||||
mediaActionSound.release()
|
||||
}
|
||||
|
@ -29,10 +29,8 @@ import com.simplemobiletools.camera.R
|
||||
import com.simplemobiletools.camera.extensions.*
|
||||
import com.simplemobiletools.camera.helpers.*
|
||||
import com.simplemobiletools.camera.interfaces.MyPreview
|
||||
import com.simplemobiletools.camera.models.*
|
||||
import com.simplemobiletools.camera.models.CaptureMode
|
||||
import com.simplemobiletools.camera.models.MediaOutput
|
||||
import com.simplemobiletools.camera.models.MySize
|
||||
import com.simplemobiletools.camera.models.ResolutionOption
|
||||
import com.simplemobiletools.commons.extensions.toast
|
||||
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
|
||||
|
||||
@ -51,6 +49,7 @@ class CameraXPreview(
|
||||
private const val AF_SIZE = 1.0f / 6.0f
|
||||
private const val AE_SIZE = AF_SIZE * 1.5f
|
||||
private const val CAMERA_MODE_SWITCH_WAIT_TIME = 500L
|
||||
private const val TOGGLE_FLASH_DELAY = 700L
|
||||
}
|
||||
|
||||
private val config = activity.config
|
||||
@ -85,7 +84,7 @@ class CameraXPreview(
|
||||
}
|
||||
}
|
||||
}
|
||||
private val startCameraHandler = Handler(Looper.getMainLooper())
|
||||
private val cameraHandler = Handler(Looper.getMainLooper())
|
||||
private val photoModeRunnable = Runnable {
|
||||
if (imageCapture == null) {
|
||||
isPhotoCapture = true
|
||||
@ -466,6 +465,16 @@ class CameraXPreview(
|
||||
listener.onChangeFlashMode(flashState)
|
||||
}
|
||||
|
||||
override fun toggleFlash() {
|
||||
if (config.isSoundEnabled) {
|
||||
mediaSoundHelper.playFocusCompleteSound()
|
||||
}
|
||||
camera?.cameraControl?.enableTorch(true)
|
||||
cameraHandler.postDelayed({
|
||||
camera?.cameraControl?.enableTorch(false)
|
||||
}, TOGGLE_FLASH_DELAY)
|
||||
}
|
||||
|
||||
override fun tryTakePicture() {
|
||||
val imageCapture = imageCapture ?: throw IllegalStateException("Camera initialization failed.")
|
||||
|
||||
@ -484,7 +493,7 @@ class CameraXPreview(
|
||||
val imageBytes = ImageUtil.jpegImageToJpegByteArray(image)
|
||||
val bitmap = BitmapUtils.makeBitmap(imageBytes)
|
||||
activity.runOnUiThread {
|
||||
listener.toggleBottomButtons(enabled = true)
|
||||
listener.onPhotoCaptureEnd()
|
||||
if (bitmap != null) {
|
||||
listener.onImageCaptured(bitmap)
|
||||
} else {
|
||||
@ -501,7 +510,7 @@ class CameraXPreview(
|
||||
saveExifAttributes = config.savePhotoMetadata,
|
||||
onImageSaved = { savedUri ->
|
||||
activity.runOnUiThread {
|
||||
listener.toggleBottomButtons(enabled = true)
|
||||
listener.onPhotoCaptureEnd()
|
||||
listener.onMediaSaved(savedUri)
|
||||
}
|
||||
},
|
||||
@ -519,7 +528,7 @@ class CameraXPreview(
|
||||
}
|
||||
|
||||
private fun handleImageCaptureError(exception: ImageCaptureException) {
|
||||
listener.toggleBottomButtons(enabled = true)
|
||||
listener.onPhotoCaptureEnd()
|
||||
cameraErrorHandler.handleImageCaptureError(exception.imageCaptureError)
|
||||
}
|
||||
|
||||
@ -536,9 +545,9 @@ class CameraXPreview(
|
||||
if (currentTime - lastCameraStartTime > CAMERA_MODE_SWITCH_WAIT_TIME) {
|
||||
cameraModeRunnable.run()
|
||||
} else {
|
||||
startCameraHandler.removeCallbacks(photoModeRunnable)
|
||||
startCameraHandler.removeCallbacks(videoModeRunnable)
|
||||
startCameraHandler.postDelayed(cameraModeRunnable, CAMERA_MODE_SWITCH_WAIT_TIME)
|
||||
cameraHandler.removeCallbacks(photoModeRunnable)
|
||||
cameraHandler.removeCallbacks(videoModeRunnable)
|
||||
cameraHandler.postDelayed(cameraModeRunnable, CAMERA_MODE_SWITCH_WAIT_TIME)
|
||||
}
|
||||
lastCameraStartTime = currentTime
|
||||
}
|
||||
|
@ -11,11 +11,12 @@ interface CameraXPreviewListener {
|
||||
fun setHasFrontAndBackCamera(hasFrontAndBack: Boolean)
|
||||
fun setFlashAvailable(available: Boolean)
|
||||
fun onChangeCamera(frontCamera: Boolean)
|
||||
fun toggleBottomButtons(enabled: Boolean)
|
||||
fun shutterAnimation()
|
||||
fun onMediaSaved(uri: Uri)
|
||||
fun onImageCaptured(bitmap: Bitmap)
|
||||
fun onChangeFlashMode(flashMode: Int)
|
||||
fun onPhotoCaptureStart()
|
||||
fun onPhotoCaptureEnd()
|
||||
fun onVideoRecordingStarted()
|
||||
fun onVideoRecordingStopped()
|
||||
fun onVideoDurationChanged(durationNanos: Long)
|
||||
|
@ -19,4 +19,6 @@ interface MyPreview {
|
||||
fun initVideoMode()
|
||||
|
||||
fun showChangeResolution()
|
||||
|
||||
fun toggleFlash()
|
||||
}
|
||||
|
@ -0,0 +1,28 @@
|
||||
package com.simplemobiletools.camera.models
|
||||
|
||||
import com.simplemobiletools.camera.R
|
||||
|
||||
enum class TimerMode(val millisInFuture: Long) {
|
||||
OFF(0),
|
||||
TIMER_3(3000),
|
||||
TIMER_5(5000),
|
||||
TIMER_10(10000);
|
||||
|
||||
fun getTimerModeResId(): Int {
|
||||
return when (this) {
|
||||
OFF -> R.id.timer_off
|
||||
TIMER_3 -> R.id.timer_3s
|
||||
TIMER_5 -> R.id.timer_5s
|
||||
TIMER_10 -> R.id.timer_10_s
|
||||
}
|
||||
}
|
||||
|
||||
fun getTimerModeDrawableRes(): Int {
|
||||
return when (this) {
|
||||
OFF -> R.drawable.ic_timer_off_vector
|
||||
TIMER_3 -> R.drawable.ic_timer_3_vector
|
||||
TIMER_5 -> R.drawable.ic_timer_5_vector
|
||||
TIMER_10 -> R.drawable.ic_timer_10_vector
|
||||
}
|
||||
}
|
||||
}
|
@ -1,13 +1,21 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<animated-selector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:width="@dimen/icon_size"
|
||||
android:height="@dimen/icon_size"
|
||||
android:viewportWidth="168"
|
||||
android:viewportHeight="168">
|
||||
|
||||
<item
|
||||
android:id="@+id/timer_cancel"
|
||||
android:drawable="@drawable/ic_shutter_timer_cancel"
|
||||
app:state_timer_cancel="true" />
|
||||
|
||||
<item
|
||||
android:id="@+id/pressed"
|
||||
android:drawable="@drawable/ic_shutter_vector"
|
||||
android:state_pressed="true" />
|
||||
|
||||
<item
|
||||
android:id="@+id/unpressed"
|
||||
android:drawable="@drawable/ic_shutter_vector" />
|
||||
@ -21,4 +29,9 @@
|
||||
android:drawable="@drawable/shutter_unpressed_to_pressed"
|
||||
android:fromId="@id/unpressed"
|
||||
android:toId="@id/pressed" />
|
||||
|
||||
<transition
|
||||
android:drawable="@drawable/shutter_pressed_to_timer_cancel"
|
||||
android:fromId="@id/pressed"
|
||||
android:toId="@id/timer_cancel" />
|
||||
</animated-selector>
|
||||
|
20
app/src/main/res/drawable/ic_shutter_timer_cancel.xml
Normal file
20
app/src/main/res/drawable/ic_shutter_timer_cancel.xml
Normal file
@ -0,0 +1,20 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="@dimen/icon_size"
|
||||
android:height="@dimen/icon_size"
|
||||
android:viewportWidth="512"
|
||||
android:viewportHeight="512">
|
||||
<path
|
||||
android:fillColor="#ffffff"
|
||||
android:fillType="evenOdd"
|
||||
android:pathData="M256,485C382.47,485 485,382.47 485,256C485,129.53 382.47,27 256,27C129.53,27 27,129.53 27,256C27,382.47 129.53,485 256,485ZM256,465C370.32,465 463,371.43 463,256C463,140.57 370.32,47 256,47C141.68,47 49,140.57 49,256C49,371.43 141.68,465 256,465Z" />
|
||||
|
||||
<group
|
||||
android:name="inner_cancel"
|
||||
android:pivotX="256"
|
||||
android:pivotY="256">
|
||||
<path
|
||||
android:fillColor="#FFFDFD"
|
||||
android:fillType="evenOdd"
|
||||
android:pathData="M255.5,426C349.67,426 426,349.67 426,255.5C426,161.34 349.67,85 255.5,85C161.34,85 85,161.34 85,255.5C85,349.67 161.34,426 255.5,426ZM201,302.54L209.46,311L256,264.46L302.54,311L311,302.54L264.46,256L311,209.46L302.54,201L256,247.54L209.46,201L201,209.46L247.54,256L201,302.54Z" />
|
||||
</group>
|
||||
</vector>
|
15
app/src/main/res/drawable/ic_timer_10_vector.xml
Normal file
15
app/src/main/res/drawable/ic_timer_10_vector.xml
Normal file
@ -0,0 +1,15 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M15.333,1H8.667V3.19H15.333V1ZM19.811,7.999L21.389,6.443C20.911,5.885 20.389,5.359 19.822,4.899L18.244,6.454C16.522,5.096 14.356,4.286 12,4.286C6.478,4.286 2,8.7 2,14.143C2,19.586 6.467,24 12,24C17.533,24 22,19.586 22,14.143C22,11.821 21.178,9.685 19.811,7.999ZM12,21.809C7.7,21.809 4.222,18.381 4.222,14.143C4.222,9.904 7.7,6.476 12,6.476C16.3,6.476 19.778,9.904 19.778,14.143C19.778,18.381 16.3,21.809 12,21.809Z" />
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M7.753,17.889V11.833L6.531,12.278L6,11L7.966,10.111H9.666V17.889H7.753Z" />
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M15.087,12.222C15.087,11.778 14.875,11.556 14.45,11.556H13.281C12.856,11.556 12.644,11.778 12.644,12.222V15.778C12.644,16.222 12.856,16.444 13.281,16.444H14.45C14.875,16.444 15.087,16.222 15.087,15.778V12.222ZM17,15.778C17,16.556 16.83,17.122 16.49,17.478C16.157,17.826 15.619,18 14.875,18H12.856C12.112,18 11.571,17.826 11.231,17.478C10.898,17.122 10.731,16.556 10.731,15.778V12.222C10.731,11.444 10.898,10.882 11.231,10.533C11.571,10.178 12.112,10 12.856,10H14.875C15.619,10 16.157,10.178 16.49,10.533C16.83,10.882 17,11.444 17,12.222V15.778Z" />
|
||||
</vector>
|
12
app/src/main/res/drawable/ic_timer_3_vector.xml
Normal file
12
app/src/main/res/drawable/ic_timer_3_vector.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M15.333,1H8.667V3.19H15.333V1ZM19.811,7.999L21.389,6.443C20.911,5.885 20.389,5.359 19.822,4.899L18.244,6.454C16.522,5.096 14.356,4.286 12,4.286C6.478,4.286 2,8.7 2,14.143C2,19.586 6.467,24 12,24C17.533,24 22,19.586 22,14.143C22,11.821 21.178,9.685 19.811,7.999ZM12,21.809C7.7,21.809 4.222,18.381 4.222,14.143C4.222,9.904 7.7,6.476 12,6.476C16.3,6.476 19.778,9.904 19.778,14.143C19.778,18.381 16.3,21.809 12,21.809Z" />
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M12.964,18C11.771,18 10.45,17.925 9,17.775V16.253C10.579,16.366 11.757,16.423 12.536,16.423C12.7,16.423 12.829,16.374 12.921,16.276C13.021,16.171 13.071,16.032 13.071,15.859V15.408C13.071,14.958 12.857,14.732 12.429,14.732H10.179V13.155H12.214C12.643,13.155 12.857,12.93 12.857,12.479V12.253C12.857,11.803 12.643,11.578 12.214,11.578H9.107V10H12.75C13.45,10 13.964,10.169 14.293,10.507C14.621,10.838 14.786,11.345 14.786,12.028C14.786,12.479 14.686,12.847 14.486,13.132C14.293,13.41 14.036,13.606 13.714,13.718C14.293,13.884 14.686,14.289 14.893,14.935C14.964,15.168 15,15.439 15,15.747V15.859C15,16.595 14.836,17.136 14.507,17.482C14.179,17.827 13.664,18 12.964,18Z" />
|
||||
</vector>
|
12
app/src/main/res/drawable/ic_timer_5_vector.xml
Normal file
12
app/src/main/res/drawable/ic_timer_5_vector.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M15.333,1H8.667V3.19H15.333V1ZM19.811,7.999L21.389,6.443C20.911,5.885 20.389,5.359 19.822,4.899L18.244,6.454C16.522,5.096 14.356,4.286 12,4.286C6.478,4.286 2,8.7 2,14.143C2,19.586 6.467,24 12,24C17.533,24 22,19.586 22,14.143C22,11.821 21.178,9.685 19.811,7.999ZM12,21.809C7.7,21.809 4.222,18.381 4.222,14.143C4.222,9.904 7.7,6.476 12,6.476C16.3,6.476 19.778,9.904 19.778,14.143C19.778,18.381 16.3,21.809 12,21.809Z" />
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M12.964,18C11.771,18 10.45,17.925 9,17.775V16.253C10.579,16.366 11.757,16.423 12.536,16.423C12.7,16.423 12.829,16.374 12.921,16.276C13.021,16.171 13.071,16.032 13.071,15.859V15.296C13.071,14.845 12.857,14.62 12.429,14.62H9.321V10H14.464V11.578H11.25V13.042H12.964C13.664,13.042 14.179,13.211 14.507,13.549C14.836,13.88 15,14.387 15,15.07V15.859C15,16.595 14.836,17.136 14.507,17.482C14.179,17.827 13.664,18 12.964,18Z" />
|
||||
</vector>
|
18
app/src/main/res/drawable/ic_timer_off_vector.xml
Normal file
18
app/src/main/res/drawable/ic_timer_off_vector.xml
Normal file
@ -0,0 +1,18 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M9,1h6v2h-6z" />
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M12,6c3.87,0 7,3.13 7,7c0,0.94 -0.19,1.83 -0.52,2.65l1.5,1.5C20.63,15.91 21,14.5 21,13c0,-2.12 -0.74,-4.07 -1.97,-5.61l1.42,-1.42c-0.43,-0.51 -0.9,-0.99 -1.41,-1.41l-1.42,1.42C16.07,4.74 14.12,4 12,4c-1.5,0 -2.91,0.37 -4.15,1.02l1.5,1.5C10.17,6.19 11.06,6 12,6z" />
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M11,8.17l2,2l0,-2.17l-2,0z" />
|
||||
<path
|
||||
android:fillColor="@color/camera_option_color"
|
||||
android:pathData="M2.81,2.81L1.39,4.22l3.4,3.4C3.67,9.12 3,10.98 3,13c0,4.97 4.02,9 9,9c2.02,0 3.88,-0.67 5.38,-1.79l2.4,2.4l1.41,-1.41L2.81,2.81zM12,20c-3.87,0 -7,-3.13 -7,-7c0,-1.47 0.45,-2.83 1.22,-3.95l9.73,9.73C14.83,19.55 13.47,20 12,20z" />
|
||||
</vector>
|
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:drawable="@drawable/ic_shutter_timer_cancel">
|
||||
|
||||
<target android:name="inner_cancel">
|
||||
<aapt:attr name="android:animation">
|
||||
<set>
|
||||
<objectAnimator
|
||||
android:duration="@integer/icon_anim_duration"
|
||||
android:interpolator="@android:anim/accelerate_interpolator"
|
||||
android:propertyName="rotation"
|
||||
android:valueFrom="60"
|
||||
android:valueTo="0"
|
||||
android:valueType="floatType" />
|
||||
</set>
|
||||
</aapt:attr>
|
||||
</target>
|
||||
</animated-vector>
|
@ -32,8 +32,19 @@
|
||||
|
||||
<include layout="@layout/layout_flash" />
|
||||
|
||||
<include layout="@layout/layout_timer" />
|
||||
|
||||
</FrameLayout>
|
||||
|
||||
<TextSwitcher
|
||||
android:id="@+id/timer_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintBottom_toTopOf="@id/bottom_overlay"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/top_options" />
|
||||
|
||||
<View
|
||||
android:id="@+id/bottom_overlay"
|
||||
android:layout_width="match_parent"
|
||||
|
45
app/src/main/res/layout/layout_timer.xml
Normal file
45
app/src/main/res/layout/layout_timer.xml
Normal file
@ -0,0 +1,45 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<com.google.android.material.button.MaterialButtonToggleGroup xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/timer_toggle_group"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
app:selectionRequired="true"
|
||||
app:singleSelection="true"
|
||||
tools:visibility="visible">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/timer_off"
|
||||
style="@style/Widget.App.Button.OutlineButton.IconOnly"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
app:icon="@drawable/ic_timer_off_vector" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/timer_3s"
|
||||
style="@style/Widget.App.Button.OutlineButton.IconOnly"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
app:icon="@drawable/ic_timer_3_vector" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/timer_5s"
|
||||
style="@style/Widget.App.Button.OutlineButton.IconOnly"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
app:icon="@drawable/ic_timer_5_vector" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/timer_10_s"
|
||||
style="@style/Widget.App.Button.OutlineButton.IconOnly"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
app:icon="@drawable/ic_timer_10_vector" />
|
||||
|
||||
</com.google.android.material.button.MaterialButtonToggleGroup>
|
@ -7,6 +7,16 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/toggle_timer"
|
||||
style="@style/Widget.App.Button.OutlineButton.IconOnly"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:contentDescription="@string/toggle_timer"
|
||||
android:padding="@dimen/normal_margin"
|
||||
app:icon="@drawable/ic_timer_off_vector" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/toggle_flash"
|
||||
style="@style/Widget.App.Button.OutlineButton.IconOnly"
|
||||
@ -15,11 +25,7 @@
|
||||
android:layout_weight="1"
|
||||
android:contentDescription="@string/toggle_flash"
|
||||
android:padding="@dimen/normal_margin"
|
||||
app:icon="@drawable/ic_flash_off_vector"
|
||||
app:layout_constraintEnd_toStartOf="@id/change_resolution"
|
||||
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
app:icon="@drawable/ic_flash_off_vector" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/change_resolution"
|
||||
@ -29,10 +35,6 @@
|
||||
android:layout_weight="1"
|
||||
android:contentDescription="@string/resolution"
|
||||
android:padding="@dimen/normal_margin"
|
||||
android:transitionName="one_by_one"
|
||||
app:layout_constraintEnd_toStartOf="@id/settings"
|
||||
app:layout_constraintStart_toEndOf="@id/toggle_flash"
|
||||
app:layout_constraintTop_toTopOf="@id/toggle_flash"
|
||||
tools:icon="@drawable/ic_photo_4x3_vector" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
@ -43,9 +45,6 @@
|
||||
android:layout_weight="1"
|
||||
android:contentDescription="@string/settings"
|
||||
android:padding="@dimen/normal_margin"
|
||||
app:icon="@drawable/ic_settings_vector"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@id/change_resolution"
|
||||
app:layout_constraintTop_toTopOf="@id/toggle_flash" />
|
||||
app:icon="@drawable/ic_settings_vector" />
|
||||
|
||||
</LinearLayout>
|
||||
|
14
app/src/main/res/layout/timer_text.xml
Normal file
14
app/src/main/res/layout/timer_text.xml
Normal file
@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:shadowColor="@color/md_grey_400_dark"
|
||||
android:shadowDx="0"
|
||||
android:shadowDy="2"
|
||||
android:shadowRadius="6"
|
||||
android:textAlignment="center"
|
||||
android:textAppearance="@style/TextAppearance.Material3.DisplayLarge"
|
||||
android:textColor="@color/md_grey_white"
|
||||
android:textSize="@dimen/timer_text_size"
|
||||
tools:text="3" />
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">عرض آخر الوسائط الملتقطة</string>
|
||||
<string name="toggle_camera">تبديل الكاميرا الأمامية / الخلفية</string>
|
||||
<string name="toggle_flash">تبديل وضع الفلاش اليدوي</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">ما هي جودة ضغط الصور التي يجب تعيينها؟</string>
|
||||
<string name="faq_1_text">ذلك يعتمد على هدفك. لأغراض عامة ينصح معظم الناس باستخدام 75٪ -80٪، عندما تكون الصورة لا تزال ذات نوعية جيدة حقا، ولكن يتم تقليل حجم الملف بشكل كبير مقارنة مع 100٪.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Şəkli hansı keyfiyyətdə yaddaşa salmalıyam?</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Якую якасць сціску фатаграфій трэба ўсталяваць\?</string>
|
||||
<string name="faq_1_text">Гэта залежыць ад вашай мэты. Для агульных мэтаў большасць людзей раяць выкарыстоўваць 75% -80%, калі малюнак па-ранейшаму сапраўды добрага якасці, але Памер файла рэзка памяншаецца ў параўнанні са 100%.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Преглед на последно заснети медии</string>
|
||||
<string name="toggle_camera">Превключване на предна/задна камера</string>
|
||||
<string name="toggle_flash">Превключване на режим фенерче</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Колко трябва да компресирам качеството на снимките\?</string>
|
||||
<string name="faq_1_text">Зависи. За общо ползване повечето хора съветват да 75%-80%, като изображението все още е с наистина добро качество, но размерът на файла е драстично намален в сравнение със 100%.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Visualitza el darrer contingut multimèdia capturat</string>
|
||||
<string name="toggle_camera">Commuta la càmera frontal/posterior</string>
|
||||
<string name="toggle_flash">Commuta el mode de la llum de flaix</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Quina qualitat de compressió fotogràfica he d\'establir\?</string>
|
||||
<string name="faq_1_text">Depèn del vostre objectiu. Amb finalitats genèriques, la majoria de la gent aconsella utilitzar un 75%-80%, quan la imatge encara és de molt bona qualitat, però la mida del fitxer es redueix dràsticament en comparació amb el 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Zobrazit poslední pořízený snímek</string>
|
||||
<string name="toggle_camera">Přepnout přední/zadní fotoaparát</string>
|
||||
<string name="toggle_flash">Přepnout režim blesku</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Jakou úroveň komprese fotografií bych měl nastavit\?</string>
|
||||
<string name="faq_1_text">To záleží na vašem záměru. Pro obecné účely doporučuje většina lidí 75%–80%, kdy je kvalita fotografií stále vysoká, ale výsledný soubor má o mnoho menší velikost v porovnání se 100% kvalitou.</string>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Pa ansawdd cywasgu llun dylwn ei osod?</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Hvilken fotokomprimeringskvalitet skal jeg anvende\?</string>
|
||||
<string name="faq_1_text">Det afhænger af dit mål. Til almindelige formål anbefaler de fleste at bruge 75-80 %, hvor billedet stadig har en rigtig god kvalitet, men hvor filstørrelsen er reduceret drastisk i forhold til 100 %.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Zuletzt erfasste Medien anzeigen</string>
|
||||
<string name="toggle_camera">Zwischen Front- und Rückkamera umschalten</string>
|
||||
<string name="toggle_flash">Taschenlampenmodus umschalten</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Was für eine Fotokomprimierungsqualität soll ich einstellen?</string>
|
||||
<string name="faq_1_text">Das hängt von deinem Ziel ab. Für allgemeine Zwecke empfehlen die meisten 75 - 80 %, wodurch die Qualität immer noch sehr gut bleibt, aber die Dateigrösse drastisch reduziert ist im Vergleich zu 100 %.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">Προβολή των τελευταίων αποθηκευμένων πολυμέσων</string>
|
||||
<string name="toggle_camera">Εναλλαγή εμπρός/πίσω κάμερας</string>
|
||||
<string name="toggle_flash">Εναλλαγή λειτουργίας φακού</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Ποια ποιότητα συμπίεσης φωτογραφιών πρέπει να ορίσω;</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">What photo compression quality should I set?</string>
|
||||
<string name="faq_1_text">It depends on your goal. For generic purposes most people advise using 75%-80%, when the image is still really good quality, but the file size is reduced drastically compared to 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Ver últimos archivos capturados</string>
|
||||
<string name="toggle_camera">Cambiar cámara frontal/trasera</string>
|
||||
<string name="toggle_flash">Cambiar a modo linterna</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">¿Qué calidad de compresión de foto debería establecer?</string>
|
||||
<string name="faq_1_text">Depende de tu objetivo. Para propósitos generales, la mayoría de las personas aconsejan usar 75%-80%, y la imagen seguirá siendo de calidad realmente buena, pero el tamaño del archivo es reducido drásticamente comparado con el 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Vaadake viimast salvestatud meediat</string>
|
||||
<string name="toggle_camera">Vahetamine esi-/tagakaamera</string>
|
||||
<string name="toggle_flash">Lülitage taskulambi režiim sisse</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Missugust piltide pakkimise kvaliteeti peaksin kasutama\?</string>
|
||||
<string name="faq_1_text">See sõltub sinu eesmärkidest. Üldiselt soovitame 75-80-protsendilist pakkimist, mispuhul piltide kvaliteet on jätkuvalt mõistlik, kuid piltide suurus on 100-protsendilise kvaliteediga võrreldes väiksem.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Näytä viimeksi kaapattu media</string>
|
||||
<string name="toggle_camera">Vaihda etu-/takakameraa</string>
|
||||
<string name="toggle_flash">Vaihda taskulampputilaa</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Mitä valokuvan pakkauslaatua minun pitäisi käyttää?</string>
|
||||
<string name="faq_1_text">Se riippuu tarkoituksestasi. Yleisissä tarkoituksissa useimmat ihmiset suosittelevat käyttämään 75-80%, kun kuva on edelleen todella hyvälaatuinen, mutta tiedoston koko pienenee huomattavasti verrattuna 100%:iin.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Afficher les derniers médias capturés</string>
|
||||
<string name="toggle_camera">Basculer la caméra avant/arrière</string>
|
||||
<string name="toggle_flash">Activer/désactiver le mode lampe de poche</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Quelle valeur devrais-je mettre pour la qualité des photos \?</string>
|
||||
<string name="faq_1_text">Tout dépend de ce que vous voulez en faire. Pour la plupart des usages, il est recommandé entre 75 et 80 %, ce qui est reste de qualité acceptable, tout en générant un fichier de taille bien inférieure à une photo avec une qualité de 100 %.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Ollalos derradeiros medios capturados</string>
|
||||
<string name="toggle_camera">Troca entre a cámara frontal/traseira</string>
|
||||
<string name="toggle_flash">Troca a modo lanterna</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Que calidade de compresión debo escoller para a foto?</string>
|
||||
<string name="faq_1_text">Depende do obxectivo. Para uso xeral a maioría das persoas usuarias recomendan entre un 75%-80%, que é un valor bastante bo, pero o tamaño do ficheiro redúcese drasticamente comparado co 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Pogledaj zadnje snimljeni medij</string>
|
||||
<string name="toggle_camera">Uklj./Isklj. prednju/stražnju kameru</string>
|
||||
<string name="toggle_flash">Uklj./Isklj. modus svjetiljke</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Koju kvalitetu kompresije fotografija trebam postaviti\?</string>
|
||||
<string name="faq_1_text">Ovisi o tvom cilju. Za opće namjene, većina ljudi savjetuje korištenje 75 do 80 % kad je slika dobre kvalitete, ali se veličina datoteke drastično smanjuje u usporedbi sa 100 %.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Utoljára rögzített média megtekintése</string>
|
||||
<string name="toggle_camera">Elülső/hátsó kamera átkapcsolása</string>
|
||||
<string name="toggle_flash">A zseblámpa üzemmód váltása</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Milyen fotótömörítési minőséget kell beállítanom\?</string>
|
||||
<string name="faq_1_text">Ez a céltól függ. Általános célokra a legtöbben 75%-80%-ot javasolnak, amikor a kép még mindig nagyon jó minőségű, de a fájlméret drasztikusan csökken a 100%-hoz képest.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Lihat media yang terakhir kali ditangkap</string>
|
||||
<string name="toggle_camera">Ubah kamera depan/belakang</string>
|
||||
<string name="toggle_flash">Saklar mode senter</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Kualitas kompresi foto mana yang harus saya gunakan?</string>
|
||||
<string name="faq_1_text">Tergantung tujuan anda. Untuk hal-hal yang umum direkomendasikan menggunakan 75%-80%, kualitas gambar masih sangat bagus, tetapi ukuran berkas berkurang signifikan dibandingkan dengan 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Visualizza gli ultimi media acquisiti</string>
|
||||
<string name="toggle_camera">Alterna fotocamera anteriore/posteriore</string>
|
||||
<string name="toggle_flash">Attiva la modalità torcia</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Che qualità di compressione dovrei impostare?</string>
|
||||
<string name="faq_1_text">Dipende dal proprio obiettivo. In genere si consiglia di utilizzare una qualità del 75%-80%, in modo che l\'immagine sia ancora di ottima qualità, ma la dimensione del file viene ridotta drasticamente rispetto al 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">איזו איכות דחיסת תמונה עלי להגדיר\?</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">最後に撮影したメディアを表示</string>
|
||||
<string name="toggle_camera">前面/背面カメラの切り替え</string>
|
||||
<string name="toggle_flash">フラッシュライトモードへ切り替え</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">写真の圧縮品質はどのように設定すればよいですか?</string>
|
||||
<string name="faq_1_text">これはあなたの求める目標によります。一般的な用途には、75%~80%の使用をおすすめします。この設定でも画像は十分に良い品質ですが、ファイルサイズは100%と比べて大幅に削減することができます。</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">사진 압축품질을 무엇으로 설정해야 하나요?</string>
|
||||
<string name="faq_1_text">압축품질은 촬영용도에 따라 달라질 수 있지만, 일반적으로 75% -80%를 사용하도록 권고합니다. 75% -80%로 압축 품질을 설정하면 파일 크기는 100%에 비해 크게 줄어듭니다.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Rodyti paskiausiai fiksuotą mediją</string>
|
||||
<string name="toggle_camera">Perjungti priekinę/galinę kamerą</string>
|
||||
<string name="toggle_flash">Perjungti žibintuvėlio veikseną</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Kokią nuotraukos glaudinimo kokybę turėčiau nustatyti\?</string>
|
||||
<string name="faq_1_text">Tai priklauso nuo jūsų tikslų. Įprastiems tikslams dauguma žmonių pataria naudoti 75%–80%, kuomet nuotrauka yra vis dar geros kokybės, bet failo dydis, palyginus su 100%, iš esmės sumažėja.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">അവസാനം പകർത്തിയ മീഡിയ കാണുക</string>
|
||||
<string name="toggle_camera">ഫ്രണ്ട്/ബാക്ക് ക്യാമറ ടോഗിൾ ചെയ്യുക</string>
|
||||
<string name="toggle_flash">ഫ്ലാഷ്ലൈറ്റ് മോഡ് ടോഗിൾ ചെയ്യുക</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">ഏത് ഫോട്ടോ കംപ്രഷനാണ് ഞാൻ ഉപയോഗിക്കേണ്ടത്?</string>
|
||||
<string name="faq_1_text">അത് നിങ്ങളുടെ ആവശ്യകത ആശ്രയിച്ചിരിക്കുന്നു. പൊതുവായ ആവശ്യങ്ങൾക്കായി മിക്ക ആളുകളും 75%-80% ഉപയോഗിക്കാൻ ഉപദേശിക്കുന്നു, ചിത്രം ഇപ്പോഴും നല്ല ഗുണനിലവാരമാണ്, പക്ഷേ ഫയൽ വലുപ്പം 100% മായി താരതമ്യപ്പെടുത്തുമ്പോൾ ഗണ്യമായി കുറയുന്നു.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Vis medier som ble tatt sist</string>
|
||||
<string name="toggle_camera">Veksle mellom front-/bakkamera</string>
|
||||
<string name="toggle_flash">Aktivere/deaktivere lommelykt modus</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Hvilket bildekomprimeringsnivå bør jeg bruke\?</string>
|
||||
<string name="faq_1_text">Det avhenger av hva du vil. Til alminnelige formål anbefales 75%-80%. Fremdeles god kvalitet, men vesentlig redusert filstørrelse sammenlignet med 100%.</string>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">मैले कस्तो फोटो खदाईको गुणस्तर स्थापित गर्नुपर्छ ?</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Laatste opname bekijken</string>
|
||||
<string name="toggle_camera">Camera voor/achter</string>
|
||||
<string name="toggle_flash">Zaklampmodus wisselen</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Welke kwaliteit voor foto\'s moet ik instellen?</string>
|
||||
<string name="faq_1_text">Voor normaal gebruik adviseren de meeste mensen een compressie van 75%-80%. De afbeelding zal dan nog steeds van goede kwaliteit zijn en de bestandsgrootte zal enorm veel kleiner zijn dan met 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">What photo compression quality should I set?</string>
|
||||
<string name="faq_1_text">It depends on your goal. For generic purposes most people advise using 75%-80%, when the image is still really good quality, but the file size is reduced drastically compared to 100%.</string>
|
||||
@ -48,4 +49,4 @@
|
||||
<string name="save_photo_metadata">ایکسیف میٹاڈیٹا سامبھو</string>
|
||||
<string name="photo_compression_quality">Photo compression quality</string>
|
||||
<string name="shutter">Shutter</string>
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Wyświetl ostatnio zrobiony plik</string>
|
||||
<string name="toggle_camera">Przełącz między przednim a tylnym aparatem</string>
|
||||
<string name="toggle_flash">Włącz lub wyłącz latarkę</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Jaką jakość kompresji zdjęć powinienem ustawić\?</string>
|
||||
<string name="faq_1_text">Zależy to od Twojego celu. Do celów ogólnych większość ludzi zaleca poziom 75-80% — wtedy obraz jest nadal w dobrej jakości, ale rozmiar pliku znacznie zmniejsza się w porównaniu do 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Exibir a última mídia capturada</string>
|
||||
<string name="toggle_camera">Alternar câmera frontal/traseira</string>
|
||||
<string name="toggle_flash">Alternar o modo lanterna</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Que qualidade de compressão de imagem devo definir\?</string>
|
||||
<string name="faq_1_text">Depende de seu objetivo. Para fins genéricos, aconselha-se o uso de 75%-80%, no qual a imagem ainda apresenta boa qualidade, porém tamanho drasticamente reduzido em comparação a 100%.</string>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">What photo compression quality should I set?</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Que qualidade de compressão de imagem devo definir?</string>
|
||||
<string name="faq_1_text">Depende de seu objetivo. Para fins genéricos, aconselha-se o uso de 75%-80%, no qual a imagem ainda apresenta boa qualidade, porém tamanho drasticamente reduzido em comparação a 100%.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Vizualizați ultimul suport media capturat</string>
|
||||
<string name="toggle_camera">Comutarea camerei față/spate</string>
|
||||
<string name="toggle_flash">Comutatarea modului lanternă</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Ce calitate de compresie a fotografiilor ar trebui să setez?</string>
|
||||
<string name="faq_1_text">Depinde de obiectivul dumneavoastră. În general, majoritatea oamenilor recomandă utilizarea a 75%-80%, atunci când calitatea imaginii este foarte bună, dar dimensiunea fișierului este redusă drastic în comparație cu 100%.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Просмотр последнего снимка</string>
|
||||
<string name="toggle_camera">Переключить переднюю/заднюю камеру</string>
|
||||
<string name="toggle_flash">Переключить режим фонарика</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Какое качество сжатия фото нужно установить?</string>
|
||||
<string name="faq_1_text">Это зависит от вашей цели. В общем случае большинство людей советуют использовать 75%-80%, тогда изображение всё ещё действительно хорошего качества, но размер файла резко уменьшается по сравнению со 100%.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">Zobraziť posledný súbor</string>
|
||||
<string name="toggle_camera">Prepnúť prednú/zadnú kameru</string>
|
||||
<string name="toggle_flash">Prepnúť blesk</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Akú kvalitu fotiek by som mal použiť?</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Oglejte si najnovejše zajete medije</string>
|
||||
<string name="toggle_camera">Preklopite med sprednjo in zadnjo kamero</string>
|
||||
<string name="toggle_flash">Preklopite načina svetilke</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Kakšno kakovost stiskanja fotografij nastavim\?</string>
|
||||
<string name="faq_1_text">Odvisno od vašega cilja. Za splošne namene svetuje večina ljudi uporabo 75–80 %, ko je slika še vedno zelo dobre kakovosti, vendar se velikost datoteke drastično zmanjša v primerjavi s 100 % .</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Погледајте последње снимљене медије</string>
|
||||
<string name="toggle_camera">Укључите предњу/задњу камеру</string>
|
||||
<string name="toggle_flash">Укључите режим батеријске лампе</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Који квалитет компресије фотографија треба да поставим\?</string>
|
||||
<string name="faq_1_text">Зависи од вашег циља. За опште сврхе већина људи саветује коришћење 75%-80%, када је слика и даље стварно доброг квалитета, али је величина датотеке драстично смањена у поређењу са 100%.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Visa de senast fångade medierna</string>
|
||||
<string name="toggle_camera">Växla mellan främre/bakre kamera</string>
|
||||
<string name="toggle_flash">Växla ficklampans läge</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Vilken kvalitet för fotokomprimering ska jag ställa in\?</string>
|
||||
<string name="faq_1_text">Det beror på ditt mål. För generiska ändamål rekommenderar de flesta att man använder 75-80 %, då bilden fortfarande har riktigt bra kvalitet, men filstorleken minskar drastiskt jämfört med 100 %.</string>
|
||||
|
@ -30,6 +30,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">What photo compression quality should I set?</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Son çekilen medyayı görüntüle</string>
|
||||
<string name="toggle_camera">Ön/arka kamerayı değiştir</string>
|
||||
<string name="toggle_flash">El feneri modunu değiştir</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Hangi fotoğraf sıkıştırma kalitesini ayarlamalıyım?</string>
|
||||
<string name="faq_1_text">Hedefinize bağlı. Genel amaçlar için çoğu kişi %75-%80\'i kullanmanızı önerir, görüntü hala gerçekten kaliteliyken, dosya boyutu %100\'e göre büyük ölçüde azalır.</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">Перегляд останньої знятки</string>
|
||||
<string name="toggle_camera">Перемкнути передній/задній знімач</string>
|
||||
<string name="toggle_flash">Перемкнути стан ліхтарика</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">Який ступінь стиснення фото слід встановити?</string>
|
||||
<string name="faq_1_text">Це залежить від вашої мети. Загалом більшість людей радять використовувати 75%-80%, тоді зображення ще дійсно гарної якості, але розмір файлу істотно зменшується порівняно зі 100%.</string>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<string name="view_last_media">查看上次拍的媒体文件</string>
|
||||
<string name="toggle_camera">切换前置/后置摄像头</string>
|
||||
<string name="toggle_flash">切换闪光灯模式</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">我应该选用怎样的照片压缩率呢?</string>
|
||||
<string name="faq_1_text">这取决于您的目的。对大多数人的一般用途来说,建议使用 75%-80%,此时图片仍有不错的品质,而文件大小相比 100% 时大幅减小。</string>
|
||||
@ -52,4 +53,4 @@
|
||||
Haven't found some strings? There's more at
|
||||
https://github.com/SimpleMobileTools/Simple-Commons/tree/master/commons/src/main/res
|
||||
-->
|
||||
</resources>
|
||||
</resources>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">我應該設定什麼相片壓縮品質?</string>
|
||||
|
@ -6,4 +6,6 @@
|
||||
<attr name="android:shadowDy" format="float" />
|
||||
<attr name="android:shadowRadius" format="float" />
|
||||
</declare-styleable>
|
||||
|
||||
<attr name="state_timer_cancel" format="boolean"/>
|
||||
</resources>
|
||||
|
@ -5,4 +5,5 @@
|
||||
<dimen name="top_icon_size">48dp</dimen>
|
||||
<dimen name="toggle_icon_size">24dp</dimen>
|
||||
<dimen name="tab_indicator_margin">10dp</dimen>
|
||||
<dimen name="timer_text_size">180sp</dimen>
|
||||
</resources>
|
||||
|
@ -29,6 +29,7 @@
|
||||
<string name="view_last_media">View last captured media</string>
|
||||
<string name="toggle_camera">Toggle front/back camera</string>
|
||||
<string name="toggle_flash">Toggle the flashlight mode</string>
|
||||
<string name="toggle_timer">Toggle the timer mode</string>
|
||||
|
||||
<!-- FAQ -->
|
||||
<string name="faq_1_title">What photo compression quality should I set?</string>
|
||||
|
Loading…
x
Reference in New Issue
Block a user