├── .gitignore ├── .idea ├── icon.png └── icon_dark.png ├── README.md ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── example │ │ └── recheckstudiosetting │ │ └── ExampleInstrumentedTest.kt │ ├── free │ └── java │ │ └── com │ │ └── example │ │ └── recheckstudiosetting │ │ └── Foo.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── recheckstudiosetting │ │ │ ├── IFoo.kt │ │ │ ├── MainActivity.kt │ │ │ ├── MainViewModel.kt │ │ │ └── list │ │ │ ├── Tool_Code │ │ │ ├── 1_surround_with.kt │ │ │ └── 2_Complete_Current_Statement.kt │ │ │ ├── Tool_Edit │ │ │ ├── 1_copy_and_paste_from_history.kt │ │ │ ├── 2_Find_Occurrences.kt │ │ │ └── 3_Design_Tools.kt │ │ │ ├── Tool_Navigate │ │ │ ├── 1_Find_Errors.kt │ │ │ ├── 2_Move_Between_method.kt │ │ │ └── 3_Back_Forward.kt │ │ │ ├── Tool_Refactor │ │ │ ├── 0_Refactor_This.kt │ │ │ ├── 1_change_signature.kt │ │ │ ├── 2_Extract_Introduce_variable.kt │ │ │ ├── 3_Extract_Introduce_parameter.kt │ │ │ └── 4_Pull_Member_Up.kt │ │ │ ├── Tool_View │ │ │ ├── 1_recent_file_search.kt │ │ │ ├── 2_expression_type.kt │ │ │ ├── 3_Theme_Switch.kt │ │ │ ├── 4_Parameter_info.kt │ │ │ ├── 5_Quick_Definition.kt │ │ │ └── 6_Quick_Documentation.kt │ │ │ ├── Tool_Window │ │ │ └── 1_Hide_All_Windows.kt │ │ │ ├── other │ │ │ ├── 10_parameters_on_separate lines.kt │ │ │ ├── 11_Shelve.kt │ │ │ ├── 1_RegExp.kt │ │ │ ├── 2_logging_fold_lines.kt │ │ │ ├── 3_copy_preference.kt │ │ │ ├── 4_autoscroll_from_source.kt │ │ │ ├── 5_Productivity_Guide.kt │ │ │ ├── 6_Calculator.kt │ │ │ ├── 7_Preview_Tab.kt │ │ │ ├── 8_Compare.kt │ │ │ └── 9_interactive_rebase.kt │ │ │ ├── preference │ │ │ ├── A_Appearance_Behavior │ │ │ │ ├── 1_quicklist.kt │ │ │ │ ├── 2_notification.kt │ │ │ │ ├── 3_file_color.kt │ │ │ │ ├── 4_memory_settings.kt │ │ │ │ └── README.md │ │ │ ├── C_Editor │ │ │ │ ├── 10_external_annotation.kt │ │ │ │ ├── 11_file_templates.kt │ │ │ │ ├── 12_method_separators.kt │ │ │ │ ├── 13_Inlay_Hints.kt │ │ │ │ ├── 1_file_format.kt │ │ │ │ ├── 2_inject_language.kt │ │ │ │ ├── 3_layout_editor.kt │ │ │ │ ├── 4_camel_words.kt │ │ │ │ ├── 5_live_templates.kt │ │ │ │ ├── 6_auto_import.kt │ │ │ │ ├── 7_no_more_tabs.kt │ │ │ │ ├── 8_logcat_color.kt │ │ │ │ ├── 9_postfix_completion.kt │ │ │ │ └── ExternalAnnotationSample.java │ │ │ └── F_Build_Execution_Deployment │ │ │ │ ├── 1_breakpoint.kt │ │ │ │ ├── 2_required_need_plugin.kt │ │ │ │ ├── 3_dependency_breakpoint.kt │ │ │ │ └── 4_drop_frame.kt │ │ │ └── shortcuts │ │ │ ├── 1_start_new_line.kt │ │ │ └── 2_JavaDoc_RenderViews.kt │ └── res │ │ ├── drawable-v24 │ │ └── ic_launcher_foreground.xml │ │ ├── drawable │ │ └── ic_launcher_background.xml │ │ ├── layout │ │ └── activity_main.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ └── values │ │ ├── attrs.xml │ │ ├── colors.xml │ │ ├── strings.xml │ │ └── styles.xml │ ├── premium │ └── java │ │ └── com │ │ └── example │ │ └── recheckstudiosetting │ │ └── Foo.kt │ └── test │ └── java │ └── com │ └── example │ └── recheckstudiosetting │ ├── 1_breakpoint_sample.kt │ └── 1_exclude_auto_import.kt ├── build.gradle ├── gradle.properties ├── gradle ├── libs.versions.toml └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── install └── ConstraintLayout.xml └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | .idea/* 5 | !.idea/copyright 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | ktlint 11 | !.idea/icon.png 12 | !.idea/icon_dark.png 13 | .kotlin -------------------------------------------------------------------------------- /.idea/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pluu/AndroidStudio_Presentation/4450b3cd12cda865936fc214de5029fe9991cdad/.idea/icon.png -------------------------------------------------------------------------------- /.idea/icon_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pluu/AndroidStudio_Presentation/4450b3cd12cda865936fc214de5029fe9991cdad/.idea/icon_dark.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | "Android Studio 설정 다시 한번 볼까요?" 관련 발표 자료입니다. 2 | 3 | ### 최초 발표 원문 4 | * Blog : [Android Studio設定見直してみませんか? -詳細-](https://shiraji.hatenablog.com/entry/2019/02/08/131843) 5 | * Youtube : [DroidKaigi 2019 - Android Studio 設定見直してみませんか? / shiraji](https://www.youtube.com/watch?v=MV14DDxv6DE) -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | alias(libs.plugins.android.application) 3 | alias(libs.plugins.kotlin.android) 4 | alias(libs.plugins.kotlin.compose) 5 | } 6 | 7 | android { 8 | namespace 'com.example.recheckstudiosetting' 9 | 10 | compileSdk 35 11 | 12 | defaultConfig { 13 | applicationId "com.example.recheckstudiosetting" 14 | minSdk 21 15 | targetSdk 34 16 | versionCode 1 17 | versionName "1.0" 18 | testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" 19 | 20 | // Gradle Task, Build Speed 21 | // buildConfigField 'String', 'CUSTOM_KEY', '\"' + new Date() + '\"' 22 | 23 | // Live Template 24 | // 12_live_templates.kt 25 | // buildConfigField 'int', 'sample_int', 1.toString() 26 | } 27 | 28 | buildTypes { 29 | release { 30 | minifyEnabled false 31 | proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 32 | } 33 | } 34 | 35 | flavorDimensions.add("donate") 36 | productFlavors { 37 | free { 38 | dimension = 'donate' 39 | } 40 | premium { 41 | dimension = 'donate' 42 | } 43 | } 44 | 45 | compileOptions { 46 | sourceCompatibility = JavaVersion.VERSION_11 47 | targetCompatibility = JavaVersion.VERSION_11 48 | } 49 | 50 | kotlinOptions { 51 | jvmTarget = '11' 52 | } 53 | 54 | buildFeatures { 55 | viewBinding true 56 | buildConfig true 57 | compose true 58 | } 59 | } 60 | 61 | dependencies { 62 | implementation fileTree(dir: 'libs', include: ['*.jar']) 63 | implementation libs.androidx.activity.ktx 64 | implementation libs.androidx.appcompat 65 | implementation libs.androidx.core.ktx 66 | implementation libs.androidx.constraintlayout 67 | implementation libs.google.material 68 | testImplementation libs.junit 69 | androidTestImplementation libs.androidx.test.ext.junit 70 | androidTestImplementation libs.androidx.espresso.core 71 | 72 | // compose 73 | implementation platform(libs.androidx.compose.bom) 74 | implementation libs.bundles.compose 75 | androidTestImplementation platform(libs.androidx.compose.bom) 76 | androidTestImplementation libs.bundles.compose.android.test 77 | debugImplementation libs.bundles.compose.debug 78 | } 79 | -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile 22 | -------------------------------------------------------------------------------- /app/src/androidTest/java/com/example/recheckstudiosetting/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting 2 | 3 | import androidx.test.platform.app.InstrumentationRegistry 4 | import androidx.test.ext.junit.runners.AndroidJUnit4 5 | 6 | import org.junit.Test 7 | import org.junit.runner.RunWith 8 | 9 | import org.junit.Assert.* 10 | 11 | /** 12 | * Instrumented test, which will execute on an Android device. 13 | * 14 | * See [testing documentation](http://d.android.com/tools/testing). 15 | */ 16 | @RunWith(AndroidJUnit4::class) 17 | class ExampleInstrumentedTest { 18 | @Test 19 | fun useAppContext() { 20 | // Context of the app under test. 21 | val appContext = InstrumentationRegistry.getInstrumentation().targetContext 22 | assertEquals("com.example.recheckstudiosetting", appContext.packageName) 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /app/src/free/java/com/example/recheckstudiosetting/Foo.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting 2 | 3 | object Foo : IFoo { 4 | override fun getFooTitle(): String = "${BuildConfig.FLAVOR}-Foo-Foo" 5 | } -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 12 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/IFoo.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting 2 | 3 | interface IFoo { 4 | fun getFooTitle() : String 5 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting 2 | 3 | import android.os.Bundle 4 | import android.util.Log 5 | import android.widget.Toast 6 | import androidx.activity.viewModels 7 | import androidx.appcompat.app.AppCompatActivity 8 | import com.example.recheckstudiosetting.databinding.ActivityMainBinding 9 | 10 | class MainActivity : AppCompatActivity() { 11 | 12 | private lateinit var binding: ActivityMainBinding 13 | private val viewModel by viewModels() 14 | 15 | override fun onCreate(savedInstanceState: Bundle?) { 16 | super.onCreate(savedInstanceState) 17 | binding = ActivityMainBinding.inflate(layoutInflater) 18 | setContentView(binding.root) 19 | 20 | setUpViews() 21 | setUpObservers() 22 | } 23 | 24 | private fun setUpViews() { 25 | binding.btnSendLog.setOnClickListener { 26 | Log.d("SAMPLE", ">> " + (0..10).random().toString()) 27 | } 28 | binding.btnSample.setOnClickListener { 29 | viewModel.load() 30 | } 31 | } 32 | 33 | private fun setUpObservers() { 34 | viewModel.sampleData.observe(this) { 35 | Toast.makeText(this, "Receive = $it", Toast.LENGTH_SHORT).show() 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/MainViewModel.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting 2 | 3 | import android.util.Log 4 | import androidx.lifecycle.LiveData 5 | import androidx.lifecycle.MutableLiveData 6 | import androidx.lifecycle.ViewModel 7 | import androidx.lifecycle.viewModelScope 8 | import kotlinx.coroutines.delay 9 | import kotlinx.coroutines.launch 10 | 11 | class MainViewModel : ViewModel() { 12 | private val _sampleData = MutableLiveData() 13 | val sampleData: LiveData get() = _sampleData 14 | 15 | fun load() { 16 | viewModelScope.launch { 17 | Log.d("MainViewModel", "Start Load") 18 | delay(1_000) 19 | _sampleData.value = true 20 | Log.d("MainViewModel", "End Load") 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Code/1_surround_with.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Code 2 | 3 | // Main Menu | Code | Surround With... 4 | // Surround With .. (⌘ Cmd + ⌥ Option + T) 5 | 6 | fun main() { 7 | surroundWith() 8 | } 9 | 10 | fun surroundWith() { 11 | val msg = "Android Studio" 12 | errorMethod() 13 | } 14 | 15 | @Throws(IllegalStateException::class) 16 | fun errorMethod() { 17 | throw IllegalStateException("Not Call") 18 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Code/2_Complete_Current_Statement.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Code 2 | 3 | // Menu > Code > Complete Current Statement 4 | // - ⇧ Shift + ⌘ Сmd + ⏎ Enter (macOS) 5 | // - Shift +Ctrl + Enter (Windows/Linux) 6 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Edit/1_copy_and_paste_from_history.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Edit 2 | 3 | // Chose Content to Paste 4 | // ⌘ Сmd + ⇧ Shift + V 5 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Edit/2_Find_Occurrences.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Edit 2 | 3 | // Edit - Find - Add Selection for Occurrences 4 | // Find and select multiple occurrences 5 | // ⌃ Ctrl + G (macOS), or Alt+J (Windows/Linux) 6 | // https://www.jetbrains.com/help/idea/multicursor.html?#multiple_words 7 | 8 | private fun iterateList(list: List) { 9 | executeAction(list) 10 | } 11 | 12 | private fun executeAction(list: List) { 13 | list.forEach { instance -> 14 | println(instance) 15 | } 16 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Edit/3_Design_Tools.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Edit 2 | 3 | // Settings | Editor | Design Tools 4 | // Default Editor Mode -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Navigate/1_Find_Errors.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Navigate 2 | 3 | // Main Menu | Navigate | Goto Error/Bookmark Actions | Next Highlighted Error 4 | // Main Menu | Navigate | Goto Error/Bookmark Actions | Previous Highlighted Error 5 | // F2 : Next Highlighted Error 6 | // ⇧ Shift + F2 : Previous Highlighted Error 7 | 8 | // 9 | //// You can quickly step through your source file in #IntelliJIDEA to find errors by pressing F2. 10 | //// https://twitter.com/intellijidea/status/1460548216588410882?s=20&t=nZTRcugzKU8kWHFglkGi0Q 11 | // 12 | //import android.view.View 13 | //import androidx.core.view.OneShotPreDrawListener 14 | // 15 | // 16 | // 17 | // 18 | // 19 | // 20 | // 21 | // 22 | // 23 | // 24 | // 25 | // 26 | // 27 | // 28 | // 29 | // 30 | // 31 | // 32 | // 33 | // 34 | // 35 | // 36 | // 37 | // 38 | // 39 | // 40 | // 41 | // 42 | // 43 | // 44 | // 45 | // 46 | // 47 | // 48 | ///** 49 | // * Performs the given action when the view tree is about to be drawn. 50 | // * 51 | // * The action will only be invoked once prior to the next draw and then removed. 52 | // */ 53 | //inline fun View.doOnPreDraw( 54 | // crossinline action: (view: View) -> Unit 55 | //): OneShotPreDrawListener = OneShotPreDrawListener.add(this) { 56 | // action() 57 | //} -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Navigate/2_Move_Between_method.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Navigate 2 | 3 | // Main Menu | Navigate | Navigate in File | Previous Method 4 | // Main Menu | Navigate | Navigate in File | Next Method 5 | // ⇧ Shift + ⌃ Control + ↑/↓ 6 | 7 | // Main Menu | Code | Move Statement Up 8 | // Main Menu | Code | Move Statement Down 9 | // ⇧ Shift + ⌘ Cmd + ↑/↓ 10 | 11 | private fun t1() { 12 | 13 | } 14 | 15 | private fun t2() { 16 | 17 | } 18 | 19 | private fun t3() { 20 | 21 | } 22 | 23 | private fun t4() { 24 | 25 | } 26 | 27 | private fun t5() { 28 | 29 | } 30 | 31 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Navigate/3_Back_Forward.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Navigate 2 | 3 | // Navigate with the caret 4 | // - To navigate backwards, press : ⌘ Сmd + [ 5 | // - To navigate forward, press : ⌘ Сmd + ] 6 | // - To navigate to the last edited location, press : ⌘ Сmd + ⇧ Shift + ⌫ Backspace 7 | // https://www.jetbrains.com/help/idea/navigating-through-the-source-code.html -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Refactor/0_Refactor_This.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Refactor 2 | 3 | // Main Menu | Refactor | Refactor This... 4 | // - ⌃ Ctrl + T 5 | // https://www.jetbrains.com/help/idea/refactoring-source-code.html 6 | private fun refactor() { 7 | val i = 10 8 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Refactor/1_change_signature.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Refactor 2 | 3 | // Change Signature (⌘ Сmd + F6) 4 | // Menu - Refactor - Change Signature 5 | 6 | private fun test() { 7 | changeSignature() 8 | } 9 | 10 | private fun changeSignature() { 11 | val msg = "Android Studio" 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Refactor/2_Extract_Introduce_variable.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Refactor 2 | 3 | import java.io.BufferedReader 4 | import java.io.File 5 | import java.io.FileInputStream 6 | import java.io.InputStreamReader 7 | 8 | // Main Menu | Refactor | Extract/Introduce | Introduce Variable... 9 | // Extract/Introduce variable 10 | // ⌘ Сmd + ⌥ Option + V 11 | // https://www.jetbrains.com/help/idea/extract-variable.html 12 | 13 | private fun introduceVariable(): String { 14 | val result = ArrayList() 15 | BufferedReader( 16 | InputStreamReader( 17 | FileInputStream(File("a.txt")), 18 | Charsets.UTF_8 19 | ) 20 | ).useLines { lines -> 21 | lines.forEach { line -> 22 | result.add(line) 23 | } 24 | } 25 | return result.joinToString(separator = System.lineSeparator()) 26 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Refactor/3_Extract_Introduce_parameter.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Refactor 2 | 3 | import java.io.File 4 | 5 | // Main Menu | Refactor | Extract/Introduce | Parameter… 6 | // ⌘ Сmd + ⌥ Option + P 7 | // https://www.jetbrains.com/help/idea/extract-parameter.html 8 | 9 | private fun loadFile(): String { 10 | return File("a.txt").readText() 11 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Refactor/4_Pull_Member_Up.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Refactor 2 | 3 | // Refactor | Pull Members Up... 4 | // 1. ⌃ Ctrl + T 5 | // 2. Select, Pull Members Up 6 | private open class Parent 7 | 8 | private class Child : Parent() { 9 | val name = "Name" 10 | 11 | val fullName: String 12 | get() = "My name is $name" 13 | 14 | fun doSomething() {} 15 | } 16 | 17 | private class Child2 : Parent() -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_View/1_recent_file_search.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_View 2 | 3 | // ////////////////////////////////////////////////// 4 | // Recent Files 5 | // 1. Recent files : ⌘ Сmd + E 6 | // 2. Recent Edited File : ⌘ Сmd + ⇧ Shift + E 7 | 8 | // ////////////////////////////////////////////////// 9 | // Special, FileName:Line -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_View/2_expression_type.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_View 2 | 3 | import android.app.Application 4 | import android.content.Context 5 | import android.util.Log 6 | import android.widget.TextView 7 | import androidx.core.view.doOnLayout 8 | import androidx.core.view.doOnPreDraw 9 | import androidx.core.widget.doAfterTextChanged 10 | import kotlin.math.abs 11 | 12 | // Main Menu | View | Code Editor View Actions | Code View Actions | Type Info 13 | // - ⇧ Shift + ⌃ Ctrl + P (macOS) 14 | // - Shift + Ctrl + P (Windows/Linux) 15 | // https://twitter.com/intellijidea/status/1531183673835257856?s=20&t=nZTRcugzKU8kWHFglkGi0Q 16 | 17 | fun expressionType() { 18 | abs(1 - 10) 19 | Log.d("DEBUG", "Debug Print") 20 | 21 | val context: Context = Application() 22 | val view = TextView(context) 23 | view.alpha 24 | view.textSize 25 | view.textScaleX 26 | view.visibility 27 | view.textColors 28 | view.compoundDrawables 29 | 30 | view.doAfterTextChanged { } 31 | view.doOnLayout { } 32 | view.doOnPreDraw { } 33 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_View/3_Theme_Switch.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_View 2 | 3 | // Switch between schemes 4 | // Main Menu | View | Quick Switch Scheme... 5 | // ⌃ Ctrl + ` (macOS) 6 | // https://www.jetbrains.com/help/objc/switching-between-schemes.html -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_View/4_Parameter_info.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_View 2 | 3 | import java.io.File 4 | 5 | // Main Menu | View | Code Editor View Actions | Code View Actions | Parameter Info 6 | // ⌘ Cmd + P 7 | 8 | private fun test() { 9 | val text = File("a.txt").readText() 10 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_View/5_Quick_Definition.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_View 2 | 3 | import com.example.recheckstudiosetting.MainViewModel 4 | 5 | // Main Menu | View | Quick Definition 6 | // ⌥ Option + Space 7 | private fun loadSample(viewModel: MainViewModel) { 8 | viewModel.load() 9 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_View/6_Quick_Documentation.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_View 2 | 3 | import androidx.lifecycle.LiveData 4 | import androidx.lifecycle.MutableLiveData 5 | 6 | // Main Menu | View | Quick Documentation 7 | // F1 8 | 9 | private val _sampleData = MutableLiveData() 10 | val sampleData: LiveData get() = _sampleData -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/Tool_Window/1_Hide_All_Windows.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.Tool_Window 2 | 3 | // Main Menu | Window | Active Tool Window | Hide All Tool Windows 4 | // - ⌘ Cmd + ⇧ Shift + F12 (macOS) -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/10_parameters_on_separate lines.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // 1. ⌥ Opt + ⏎ Enter (macOS) or Alt+Enter (Windows/Linux) 4 | // 2. select 'Put parameters on separate lines' 5 | // https://twitter.com/intellijidea/status/1523573737584427008?s=20&t=nZTRcugzKU8kWHFglkGi0Q 6 | 7 | fun test(value1: String, value2: Int, value3: Float) { 8 | // TODO: blabla 9 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/11_Shelve.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // Preferences | Version Control | Shelf 4 | // https://www.jetbrains.com/help/idea/shelving-and-unshelving-changes.html -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/1_RegExp.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // Show Intention Actions > Check RegExp 4 | fun runRegExp() { 5 | "^[A-Za-z0-9+]*\$".toRegex() 6 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/2_logging_fold_lines.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // 1. Logcat Dialog Open 4 | // 2. Right Menu 5 | // 3. Select "Fold Lines Like This" 6 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/3_copy_preference.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // Preference Path Copy 방법 -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/4_autoscroll_from_source.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // Tip 1) Option + F1 => Project View 4 | // Tip 2) 1.Project | Options | Always Select Opened File -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/5_Productivity_Guide.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // 본인이 자주 사용하는 기능 통계 4 | // Help - My Productivity -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/6_Calculator.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // ⌘ Сmd + ⇧ Shift + A (macOS) -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/7_Preview_Tab.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // Preferences | Editor | General | Editor Tabs 4 | // Opening Policy > [✓] Use, Enable preview tab 5 | // https://www.jetbrains.com/help/idea/using-code-editor.html#preview-tab -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/8_Compare.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // 1. Compare With Clipboard 4 | // 2. Compare with another file -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/other/9_interactive_rebase.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.other 2 | 3 | // Interactively Rebase from Here 4 | // - Squash 5 | // - Fixup 6 | // https://www.jetbrains.com/help/idea/edit-project-history.html#interactive-rebase -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/A_Appearance_Behavior/1_quicklist.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.A_Appearance_Behavior 2 | 3 | // 자신이 원하는 형태의 Popup 생성 가능 4 | // Preferences | Appearance & Behavior | Quick Lists 5 | // https://www.jetbrains.com/help/idea/settings-quick-lists.html 6 | private fun sample() { 7 | val value = "pluu" 8 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/A_Appearance_Behavior/2_notification.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.A_Appearance_Behavior 2 | 3 | // Gradle Sync가 끝나면 Notification으로 알림 4 | // Preferences | Appearance & Behavior | Notifications 5 | // [✓] Read aloud 6 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/A_Appearance_Behavior/3_file_color.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.A_Appearance_Behavior 2 | 3 | // File Color를 더 알기 쉽게 표시 4 | // Preferences | Appearance & Behavior | File Colors 5 | 6 | // File Status 7 | // Preferences | Version Control | File Status Colors 8 | // https://www.jetbrains.com/help/idea/file-status-highlights.html -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/A_Appearance_Behavior/4_memory_settings.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.A_Appearance_Behavior 2 | 3 | // Preferences | Appearance & Behavior | System Settings | Memory Settings 4 | 5 | // 샘플로 넣을 VM 메모리 6 | // Sample : -Xmx4096m -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/A_Appearance_Behavior/README.md: -------------------------------------------------------------------------------- 1 | [TOC] 2 | 3 | ------ 4 | 5 | ### Widescreen tool window layout 6 | 7 | - Preferences | Appearance & Behavior | Appearance 8 | 9 | > https://www.jetbrains.com/help/idea/manipulating-the-tool-windows.html#wide-screen -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/10_external_annotation.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Preferences | Editor | Code Style | Java 4 | // Code Generation > [✓] Use external annotation 5 | 6 | fun externalAnnotation() { 7 | val sample = 8 | com.example.recheckstudiosetting.list.preference.C_Editor.ExternalAnnotationSample() 9 | val s1 = sample.safeString 10 | val s2 = sample.unsafeString 11 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/11_file_templates.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Preferences | Editor | File and Code Templates 4 | // https://www.jetbrains.com/help/idea/using-file-and-code-templates.html 5 | // https://www.jetbrains.com/help/idea/settings-file-and-code-templates.html 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | //#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME} 51 | // 52 | //#end 53 | //import android.content.Context 54 | //import android.util.AttributeSet 55 | //import android.view.View 56 | // 57 | //#parse("File Header.java") 58 | //class ${NAME} @JvmOverloads constructor( 59 | //context: Context, 60 | //attrs: AttributeSet? = null, 61 | //defStyleAttr: Int = 0 62 | //) : View(context, attrs, defStyleAttr) { 63 | // init { 64 | // val attr = context.theme.obtainStyledAttributes(attrs, R.styleable.${NAME}, 0, 0) 65 | // try { 66 | // // TODO: 67 | // } catch (e: Exception) { 68 | // e.printStackTrace() 69 | // } finally { 70 | // attr.recycle() 71 | // } 72 | // } 73 | //} 74 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/12_method_separators.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Preferences | Editor | General | Appearance 4 | // [✓] Show method separators 5 | // https://www.jetbrains.com/help/idea/settings-editor-appearance.html 6 | 7 | private fun t1() { 8 | 9 | } 10 | 11 | private fun t2() { 12 | 13 | } 14 | 15 | private fun t3() { 16 | 17 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/13_Inlay_Hints.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // additional information about your code, like the names of the parameters that a called method expects 4 | // Preferences | Editor | Inlay Hints 5 | // https://www.jetbrains.com/help/idea/inlay-hints.html 6 | 7 | val a = listOf(1, 2, 3).sum() 8 | 9 | private fun test(a: Int, b: String) { 10 | // TODO 11 | } 12 | private fun test2() { 13 | test(10, "20") 14 | } 15 | 16 | private fun test3() = (0..10) 17 | .map { 18 | it * 2 19 | }.joinToString(separator = ",") { it.toString() } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/1_file_format.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | //import kotlinx.android.synthetic.main.activity_main.* 4 | 5 | // Main Menu | Code | Reformat Code 6 | // ⌘ Cmd + ⌥ Option + L 7 | 8 | // Reformat code, save actions ... Inspection!! 9 | // Commit > Reformat Code, etc 10 | // Preferences | Editor | Inspections 11 | // Kotlin | Style issues | File is not formatted according to project settings 12 | 13 | //fun format(value: Int) { 14 | // if(value != 5){ 15 | // println(value) 16 | // } 17 | //} 18 | 19 | // Preferences | Editor | Code Style > Tab Formatter 20 | 21 | //@formatter:off 22 | //fun notformat(value: Int) { 23 | // if(value != 5){ 24 | // println(value) 25 | // } 26 | //} 27 | //@formatter:on 28 | 29 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/2_inject_language.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // JSON 형식을 쉽게 적도록 4 | // Shortcuts : ⌥ Option + ⏎ Enter / language=JSON 5 | // Preferences | Editor | Language Injections | Advanced 6 | // [✓] Add @Language annotation or comment if needed 7 | // https://www.jetbrains.com/help/idea/advanced.html#Advanced.xml 8 | 9 | fun fooJson() { 10 | val raws = "{\n \"name\": \"pluu\",\n \"company\": \"KakaoBank\"\n}" 11 | val json = "{\n \"name\": \"pluu\",\n \"company\": \"KakaoBank\"\n}" 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/3_layout_editor.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Layout Editor 4 | // Preferences | Editor | Design Tools 5 | 6 | // Mode 전환 7 | // - ⇧ Shift + ⌃ Ctrl + ◀︎ 8 | // - ⇧ Shift + ⌃ Ctrl + ▶︎ -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/4_camel_words.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Word Select 4 | // Preferences | Editor | General | Smart Keys 5 | 6 | // pluulove 7 | // PluuLove 8 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/5_live_templates.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | import android.content.Context 4 | import android.util.AttributeSet 5 | import android.view.View 6 | 7 | // 자주 사용되는 구성을 코드에 삽입 가능 8 | // Preferences | Editor | Live Templates 9 | // https://www.jetbrains.com/help/idea/using-live-templates.html#live_templates_types 10 | // 11 | // 1. obtainStyledAttributes 12 | // - ↓↓↓↓↓ Template ↓↓↓↓↓ 13 | // 2. activity_main.xml > Constraint center of Parent 14 | 15 | class CustomView @JvmOverloads constructor( 16 | context: Context, 17 | attrs: AttributeSet? = null, 18 | defStyleAttr: Int = 0 19 | ) : View(context, attrs, defStyleAttr) { 20 | init { 21 | 22 | } 23 | } 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | // Live Template 54 | // val attr = context.theme.obtainStyledAttributes(attrs, R.styleable.$CLASS$, 0, 0) 55 | // try { 56 | // } catch (e: Exception) { 57 | // e.printStackTrace() 58 | // } finally { 59 | // attr.recycle() 60 | // } 61 | 62 | // $CLASS$ => Expression:kotlinClassName() -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/6_auto_import.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Preferences | Editor | General | Auto Import 4 | // [✓] Add unambiguous imports on the fly -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/7_no_more_tabs.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Preferences | Editor | General | Editor Tabs 4 | // Appearance | Placement > None 5 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/8_logcat_color.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Preferences | Editor | Color Scheme | Android Logcat -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/9_postfix_completion.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor 2 | 3 | // Preferences | Editor | General | Postfix Completion 4 | // Shortcuts : ⌘ Сmd + J 5 | // https://www.jetbrains.com/help/idea/settings-postfix-completion.html 6 | 7 | fun postfixCompletion_Test1(param: Any?) { 8 | // try 9 | // notnull 10 | // nn 11 | // null 12 | "Test | Postfix Completion >> try" 13 | } 14 | 15 | fun postfixCompletion_Test2() { 16 | // else 17 | val isBoolean = true 18 | } 19 | 20 | fun postfixCompletion_Test3(param: List) { 21 | // for 22 | } 23 | 24 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/C_Editor/ExternalAnnotationSample.java: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.C_Editor; 2 | 3 | import org.jetbrains.annotations.Nullable; 4 | 5 | public class ExternalAnnotationSample { 6 | private String safeString; 7 | private String unsafeString; 8 | 9 | @Nullable 10 | public String getSafeString() { 11 | return safeString; 12 | } 13 | 14 | public String getUnsafeString() { 15 | return unsafeString; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/F_Build_Execution_Deployment/1_breakpoint.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.F_Build_Execution_Deployment 2 | 3 | // Confirm delete Breakpoints on Conditional or logging 4 | // Preferences | Build, Execution, Deployment | Debugger 5 | // https://www.jetbrains.com/help/idea/settings-debugger.html#b5dd1295 6 | 7 | // Open...BreakPointSampleTest > Run 8 | 9 | fun fooBreakpoints(value: Int) { 10 | if (value == 5) { 11 | println(value) 12 | } 13 | println("blabla") 14 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/F_Build_Execution_Deployment/2_required_need_plugin.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.F_Build_Execution_Deployment 2 | 3 | // Plugin Install 을 강제화 4 | // Preferences | Build, Execution, Deployment | Required Plugins -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/F_Build_Execution_Deployment/3_dependency_breakpoint.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.F_Build_Execution_Deployment 2 | 3 | // Disable until hitting the following breakpoint 4 | // Site: https://www.jetbrains.com/help/idea/using-breakpoints.html#properties 5 | // Breakpoint icons : https://www.jetbrains.com/help/idea/using-breakpoints.html#breakpoint-icons 6 | 7 | // Open...BreakPointSampleTest > Run 8 | 9 | fun trigger_breakpoint(value: Int) { 10 | if (value == 1) { 11 | print(value) 12 | } 13 | } 14 | 15 | fun dependency_breakpoint(value: Int) { 16 | print(value) 17 | } -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/preference/F_Build_Execution_Deployment/4_drop_frame.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.preference.F_Build_Execution_Deployment 2 | 3 | import android.util.Log 4 | 5 | // On Debugging 6 | // Set breakpoint 7 | // Debug Menu > Drop Frame 8 | 9 | fun dropFrame(value: Int) { 10 | doSomething() 11 | Log.d("TAG", value.toString()) 12 | } 13 | 14 | private fun doSomething() { 15 | Log.d("TAG", "blalbabla") 16 | } 17 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/shortcuts/1_start_new_line.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.shortcuts 2 | 3 | // Split Like : ⌘ Сmd + ⏎ Enter 4 | 5 | fun startNewLine() { 6 | println(0) 7 | println(1) 8 | println(2) 9 | println(3) 10 | println(4) 11 | println(5) 12 | println(6) 13 | println(7) 14 | println(8) 15 | println(9) 16 | } 17 | 18 | -------------------------------------------------------------------------------- /app/src/main/java/com/example/recheckstudiosetting/list/shortcuts/2_JavaDoc_RenderViews.kt: -------------------------------------------------------------------------------- 1 | package com.example.recheckstudiosetting.list.shortcuts 2 | 3 | // Javadocs with in-editor docs rendering! 4 | // - ⌃ Ctrl + ⌥ Option + Q (macOS) or Ctrl+Alt+Q (Windows/Linux) 5 | // - Click the icon in the gutter 6 | 7 | /** 8 | * Sample 9 | * 10 | * - ABCD 11 | * - EFG 12 | * 13 | * @param t1 Test 14 | */ 15 | private fun test(t1: String): Int { 16 | return 1 17 | } -------------------------------------------------------------------------------- /app/src/main/res/drawable-v24/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- 1 | 7 | 12 | 13 | 19 | 22 | 25 | 26 | 27 | 28 | 34 | 35 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 55 | 60 | 65 | 70 | 75 | 80 | 85 | 90 | 95 | 100 | 105 | 110 | 115 | 120 | 125 | 130 | 135 | 140 | 145 | 150 | 155 | 160 | 165 | 170 | 171 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 |