Логин
 
     
Пароль
 
 

Kotlin наработки

Дата создания: 24.11.2020 [последнее обновление: 03.12.2020 16:00]   220 просмотров
Эта заметка создана блоггером: Зарегестрированный пользователь poleznye-sovetypoleznye-sovety
#1
24.11.2020 17:16

Создание и вывод функции

private var number: Int=5

private var number2: Int=5

private var text: String ="В магазине осталось ${getNumber()} яблок"

private var tvText:TextView?=null

----------onCreate----------{

tvText=findViewById(R.id.tvText)

var sum:Int=getNumber()

tvText?.setText(text)

---------------------------------}

private fun getNumber():Int {

return number+ number2

}

#2
24.11.2020 17:21

Вывод текста с переменной

private var number: Int=5

private var text: String ="В магазине осталось $number яблок"

private var tvText:TextView?=null

----------onCreate----------{

tvText=findViewById(R.id.tvText)

tvText?.setText(text)

---------------------------------}

#3
25.11.2020 14:31

Парсинг значений из текста

private var text: String ="В магазине <осталось> 123 яблока, а может и больше"
private var tvText:TextView?=null

----------onCreate----------{

tvText=findViewById(R.id.tvText)

////Вырезание после определенной буквы///

var subText:String=text.substringAfter('<')

tvText?.setText(subText)

Результат:

осталось> 123 яблока, а может и больше

////////////////////////////////////////////////////////////////////


////Вырезание до определенной буквы///

var subText:String=text.substringAfter('<')

var subText2:String=subText.substringBefore('>')

tvText?.setText(subText2)

Результат:

осталось

////////////////////////////////////////////////////////////////////

---------------------------------}

#4
25.11.2020 14:54

Парсинг <div>

Нажмите на фото для увеличения
открыть оригинал фотографии 680x424 32.67 Kb
#5
25.11.2020 14:55

Работа цикла - подсчет определенных символов и вывод

private var text: String ="В <магазине> осталось 123 яблока, а может и <больше кто знает> всем привет <как> у вас дела <надеюсь> не <болеете>"

private var tvText:TextView?=null

----------onCreate----------{

tvText=findViewById(R.id.tvText)

var counter:Int=0

for(n in 0 until text.length -1)

{

if (text.get(n)=='<') counter ++

}

tvText?.setText(counter.toString())

---------------------------------}

#6
25.11.2020 16:26

Создание массива с числами и вывод

private var tvText:TextView?=null

----------onCreate----------{

tvText=findViewById(R.id.tvText)

var startNumber: Array = arrayOf(2,6,9,6)
var number:Int= startNumber[0]

tvText?.setText(number.toString())

---------------------------------}

#7
25.11.2020 16:37

Перезапись значения ячейки массива

private var tvText:TextView?=null

----------onCreate----------{

tvText=findViewById(R.id.tvText)

var startNumber: Array = arrayOf(2,6,9,6)

startNumber[3]=4


var number:Int= startNumber[3]

tvText?.setText(number.toString())

---------------------------------}

#8
25.11.2020 17:28

Автоматический парсер на цикле (выводит в лог)

private var text: String ="В <магазине> осталось 123 яблока, а может и <больше кто знает> всем привет <как> у вас дела <надеюсь> не <болеете>"

----------onCreate----------{

var subText:String=text.substringAfter('<')
var subText2:String=subText.substringBefore('>')
var subText3:String=text.substringAfter('>')
var subText4:String=subText3.substringAfter('<')
var subText5:String=subText4.substringBefore('>')


var counter:Int=0
for(n in text.indices)
{
if (text.get(n)=='<') counter ++
}

var startPosition=IntArray (counter)
var endPosition=IntArray (counter)
var startPcounter:Int=0
var endPcounter:Int=0

for(n in text.indices)
{

if (text.get(n)=='<') {
startPosition[startPcounter]=n
startPcounter++
}

}

for(n in text.indices)
{

if (text.get(n)=='>') {
endPosition[endPcounter]=n
endPcounter++
}

}

var textFoundArray = Array (counter) {""}
for (n in startPosition.indices )
{
textFoundArray[n]=text.substring(startPosition[n]+1 ,endPosition[n])
Log.d("MyLog","Tex from n: " +textFoundArray[n])
}

---------------------------------}

Нажмите на фото для увеличения
открыть оригинал фотографии 810x363 39.4 Kb
#9
26.11.2020 14:36

Свойства картинок и элементов

Изменение картики по размеру: scaleType -fitCenter

Убрать фон у картинки (только для файлов с прозрачным фоном): background - color - transparent

#10
26.11.2020 15:10

Работа с экраном:


Убрать экшн бар:

В коде меняем в строке: class MainActivity : Activity() {

В коде activity_main.xml меняем в строке

app:srcCompat="@drawable/semafor_grey" />

app:srcCompat="@drawable/button_start" />

на

android:src="@drawable/semafor_grey" />

android:src="@drawable/button_start" />

*semafor_grey - название картинки

*button_start = название картинки кнопки в проекте

//////////////////////////////////////////////////////////////////////

Убрать статус бар:

В коде themes.xml (в паке values) вставляем строку

<item name="android:windowFullscreen">true</item>

#11
26.11.2020 16:28

Функция при нажатии на кнопку меняется изображение

В aktivity_maim.xml кнопке назначить атрибут onClick = onClickStartStop

Картинке назначить атрибут id=imSemafor

var imSemafor: ImageView? = null

----------onCreate----------{

imSemafor=findViewById(R.id.imSemafor)

---------------------------------}

fun onClickStartStop (view: View){

imSemafor?.setImageResource(R.drawable.semafor_green)

}

*drawable.semafor_green (drawable- название папки, semafor_green -нахвание картинки)

#12
26.11.2020 16:36

Функция при нажатии на кнопку меняется изображение кнопки

В aktivity_maim.xml кнопке назначить атрибут onClick = onClickStartStop

----------onCreate----------{

---------------------------------}

fun onClickStartStop (view: View)
{
view as ImageButton
view.setImageResource(R.drawable.button_stop)
}

*drawable.button_stop (drawable- название папки, button_stop -нахвание картинки кнопки)

#13
27.11.2020 15:12

Скрипт Светофор со сбросом

package com.example.sfetofor
import android.app.Activity
import android.os.Bundle
import android.view.View
import android.widget.ImageButton
import android.widget.ImageView
import java.util.*

class MainActivity : Activity() {

var imSemafor: ImageView? = null
var counter:Int=0
var timer: Timer?=null
var is_run=false
var imageArray: IntArray = intArrayOf(R.drawable.semafor_red,R.drawable.semafor_yellow,R.drawable.semafor_green)

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
imSemafor=findViewById(R.id.imSemafor)

}

fun onClickStartStop (view: View)
{
view as ImageButton
if (!is_run) {

startStop()
view.setImageResource(R.drawable.button_stop)
is_run = true
}else{


imSemafor?.setImageResource(R.drawable.semafor_grey)
view.setImageResource(R.drawable.button_start)
timer?.cancel()
is_run = false
counter=0
}
}

fun startStop ()
{
timer = Timer()
timer?.schedule(object : TimerTask(){
override fun run() {
runOnUiThread(){
imSemafor?.setImageResource(imageArray[counter])
counter++
if (counter==3){
counter=0
}


}

}

},0,1000)

}
}

#14
01.12.2020 16:55

Передача данных из одного окна в другое

///////////////////////////////////////////////////////////////////////////

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}

fun onClickStart(view: View){
val intent= Intent(this, SecondActivity:: class.java ).apply {
putExtra("salud", "привет в майн активити")
}
startActivity(intent)
}

}

//////////////////////////////////////////////////////////////////////

class SecondActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_second)
var tvMessage= findViewById<TextView>(R.id.tvMessage)
var i=intent

if (i!=null) tvMessage.setText(i.getCharSequenceExtra("salud"))
}
}

#15
02.12.2020 16:18

Подключение Kotlin Android Extensions и легкий вывод текста

и же всё же хочется пройти уроки по Котлину используя библиотеку Kotlin Android Extensions, то можно вручную подключить её в Gradle, для этого нужно: в папке проекта Gradle Scripts открыть два файла buildGradle, в первом файле (buildGradle(Project...)) в первой строке прописать:

apply plugin: 'kotlin-android-extensions'

а во втором файле (buildGradle(Module...)) в блоке plugins{} после всех подключенных id:

id 'kotlin-android-extensions'

, и нажать появившуюся кнопку "sync ".

///////////////////////////////////////////////////

tvText.text="Привет Джон уик" // - вывод тексат
var textOn=tvText.text // - занесение в переменную текста

#16
02.12.2020 16:32

Создание массива текста

var nameList= ArrayList<String>()


nameList.add("Серега")
nameList.add("Леха")
nameList.add("Егор")
nameList.add("Семен")
nameList.add("Денис")
nameList.add("Степан")
nameList.add("Матвей")

////////////////////////////////////////////////////

nameList.removeAt(5) // - удаление 5 позиции из массива

#17
03.12.2020 15:16

Вывод списка через ArrayAdapter

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

var nameList= ArrayList<String>()
nameList.add("Серега")
nameList.add("Леха")
nameList.add("Егор")
nameList.add("Семен")
nameList.add("Денис")
nameList.add("Степан")
nameList.add("Матвей")

val adapter= ArrayAdapter (this, android.R.layout.simple_list_item_1,nameList)
listView.adapter=adapter


}

// simple_list_item_1 - название шаблона адаптера по умолчанию

#18
03.12.2020 15:20

Вывод списка и по нажатию элементов информирование

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

var nameList= ArrayList()
nameList.add("Серега2")
nameList.add("Леха")
nameList.add("Егор")
nameList.add("Семен")
nameList.add("Денис")
nameList.add("Степан")
nameList.add("Матвей")

val adapter= ArrayAdapter (this, android.R.layout.simple_list_item_1,nameList)
listView.adapter=adapter

listView.setOnItemClickListener { parent, view, position, id ->

Toast.makeText(this,"Нажата позиция: $position, а зовут его ${nameList.get(position)}",Toast.LENGTH_SHORT).show()
}


}
}

 
#146
Дата заметки: 10.01.2021 16:42 [последнее обновление: 29.04.2021 16:51]
136 просмотров  3 записи 0 фотографий
#142
Дата заметки: 27.11.2019 22:51 [последнее обновление: 08.05.2020 01:26]
573 просмотра  2 записи 0 фотографий
#132
Дата заметки: 14.02.2019 00:26 [последнее обновление: 14.02.2019 00:26]
763 просмотра  1 запись 0 фотографий
#124
Самые интересные темы в одноклассниках  
Дата заметки: 10.11.2018 01:47 [последнее обновление: 10.11.2018 03:10]
1 089 просмотров  18 записей 18 фотографий
#121
Дата заметки: 10.09.2018 19:18 [последнее обновление: 10.09.2018 19:18]
776 просмотров  1 запись 0 фотографий
Массоны и теория заговора
Духовность и просветление
#119
Вредные привычки от которых в жизни следует избавиться: практика и мотивация  
Дата заметки: 07.09.2018 13:48 [последнее обновление: 07.09.2018 16:38]
854 просмотра  4 записи 1 фотография
Здоровье
Духовность и просветление
#113
Дата заметки: 01.07.2018 01:21 [последнее обновление: 01.07.2018 01:22]
753 просмотра  1 запись 0 фотографий
#112
Сказка ложь, да в ней намёк! Добрым молодцам урок!  
Дата заметки: 29.06.2018 02:38 [последнее обновление: 29.06.2018 19:54]
883 просмотра  4 записи 3 фотографии
Массоны и теория заговора
Духовность и просветление
Мультфильмы
#111
Мультики для взрослых СССР  
Дата заметки: 29.06.2018 01:40 [последнее обновление: 31.07.2018 21:40]
1 200 просмотров  14 записей 1 фотография
Массоны и теория заговора
Духовность и просветление
Мультфильмы
#110
Дата заметки: 21.06.2018 23:33 [последнее обновление: 23.07.2018 23:56]
966 просмотров  18 записей 0 фотографий
Мультфильмы
Воспитание детей
#104
Какие лечебные травы и растения цветут и собирают в середине июня +фото  
Дата заметки: 10.06.2018 23:15 [последнее обновление: 16.06.2018 01:33]
1 150 просмотров  69 записей 69 фотографий
Травы
Лес и природа
#103
Чай из листьев вишни -рецепт ферментации в домашних условиях: польза и вред  
Дата заметки: 07.06.2018 23:15 [последнее обновление: 15.06.2018 00:32]
1 217 просмотров  21 запись 21 фотография
Здоровье
Травы
Рецепты
Лес и природа
Отзывы о продуктах
Народные средства
#101
Какие лечебные травы и растения цветут и собирают в начале июня +фото  
Дата заметки: 02.06.2018 22:23 [последнее обновление: 14.06.2018 21:22]
3 419 просмотров  140 записей 140 фотографий
#98
Как быстро снять усталость с ног в домашних условиях –лучшее средство +видео  
Дата заметки: 27.05.2018 20:46 [последнее обновление: 31.05.2018 22:11]
1 250 просмотров  6 записей 5 фотографий
Народные средства
Здоровье
#96
Какие лечебные травы и растения цветут и собирают в конце мая +фото  
Дата заметки: 22.05.2018 20:32 [последнее обновление: 25.05.2018 11:22]
3 620 просмотров  188 записей 188 фотографий
Здоровье
Травы
Сообщить о нарушении авторских прав
Условия предоставления информации
Отказ от ответственности
      Служба поддержки
Добавить заметку
       
Наш сайт не занимается размещением собственных заметок, а лишь предоставляет площадку для их размещения. Всю информацию размещают непосредственно сами блоггеры.
 
© 2018-2021. Лучшие электронные заметки – Онлайн ежедневник – Планировщик заданий
© 2018-2021. Best electronic notes - Online diary - Task Scheduler and tasks
     
Некоторые материалы этого сайта могут содержать информацию, не предназначенную для детей младше 16 лет.