Skip to content

Instantly share code, notes, and snippets.

View NikCapko's full-sized avatar
🏠
Working from home

Nikolay Capko NikCapko

🏠
Working from home
View GitHub Profile
public class SimpleTextWatcher implements TextWatcher {
private BeforeTextChanged beforeTextChanged;
private OnTextChanged onTextChanged;
private AfterTextChanged afterTextChanged;
public SimpleTextWatcher(BeforeTextChanged beforeTextChanged) {
this.beforeTextChanged = beforeTextChanged;
}
@NikCapko
NikCapko / Iterable viegroup children
Last active November 23, 2022 17:29
Iterable viegroup children
val ViewGroup.children: Iterable<View>
get() = (0 until childCount).map { getChildAt(it) }
// use:
linearLayout.children
.forEachIndexed { _, view ->
view.setOnClickListener {}
}
@NikCapko
NikCapko / FormatterTextWatcher.kt
Last active April 25, 2023 19:00
Formatting input to edittext
import android.text.Editable
import android.text.TextWatcher
import android.widget.EditText
import kotlin.math.max
import kotlin.math.min
/**
* Класс, предназначенный для форматирования тектового ввода в EditText
* @param editText поле ввода символов
* @param formatter метод форматирования исходной строки
@NikCapko
NikCapko / CustomDialog.kt
Last active April 25, 2023 19:00
Show custom dialog
Dialog(context).apply {
setContentView(R.layout.dialog)
window?.setBackgroundDrawableResource(R.drawable.bg_dialog)
findViewById<ImageView>(R.id.ivClose).setOnClickListener { dismiss() }
findViewById<Button>(R.id.btnTry).setOnClickListener { dismiss() }
}.show()
import android.util.Log
fun Any?.printToLog(tag: String = "DEBUG_LOG") {
Log.d(tag, toString())
}
@NikCapko
NikCapko / ViewVisibilityExtensions.kt
Created March 21, 2023 21:09
Change view visibility
import android.view.View
fun View.gone() = run { visibility = View.GONE }
fun View.visible() = run { visibility = View.VISIBLE }
fun View.invisible() = run { visibility = View.INVISIBLE }
infix fun View.visibleIf(condition: Boolean) =
run { visibility = if (condition) View.VISIBLE else View.GONE }
@NikCapko
NikCapko / Single unit test.kt
Last active August 1, 2023 16:28
Single unit test
@Test
fun `$TestDescription$`() {
// ARRANGE
val sut: $TestModule$ = $TestModule$($Parameters$)
$END$
// ACTION
// CHECK
}
@NikCapko
NikCapko / Mock creation.kt
Last active August 1, 2023 16:29
Mock creation
@Mock
private var $variable$: $variableType$
@NikCapko
NikCapko / Test class for unit testing.kt
Last active August 1, 2023 16:28
Test class for unit testing
@RunWith(JUnit4::class)
class $TestClassName$Test {
@get:Rule
val mockitoRule: MockitoRule = MockitoJUnit.rule()
@Before
fun setUp() {
}
@NikCapko
NikCapko / sort_mirrorlist.sh
Last active August 10, 2023 12:57
Sort mirrorlist by connection speed on Arch
sudo reflector --verbose -l 5 -p https --sort rate --save /etc/pacman.d/mirrorlist && sudo pacman -Syyu