TextField с обводкой с использованием BasicTextFieldAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 TextField с обводкой с использованием BasicTextField

Сообщение Anonymous »

Я попытался создать TextField, используя переменную ширину и цвет обводки, используя OutlinedTextField и TextField, а затем смог сделать это с помощью BasicTextField следующим простым способом:
@Composable
fun ShowEditText(text: String, onValueChange: (String) -> Unit, enabled: Boolean = true)
{
var clStroke by remember { mutableStateOf(clEdNormalStroke) }
var clText by remember { mutableStateOf(clEdEnText) }
var dimStroke by remember { mutableStateOf(dimEdNormalStroke) }

BasicTextField(
value = text,
onValueChange = onValueChange,
modifier = Modifier.fillMaxWidth()
.onFocusChanged {
dimStroke = if(it.hasFocus) dimEdFocusStroke else dimEdNormalStroke
clText = if(enabled) clEdEnText else clEdDisText
clStroke = if(enabled) { if(it.hasFocus) clEdFocusStroke else clEdNormalStroke } else { clEdDisStroke }
}.focusable(),
enabled = enabled,
textStyle = TextStyle(
fontSize = dimTextFont,
fontWeight = FontWeight.Bold,
color = clText
),
cursorBrush = edCursorBrush,
singleLine = true,
decorationBox = { innerTextField ->
Row(Modifier.fillMaxWidth()
.background(clEdEnBg, controlShape)
.border(dimStroke, clStroke, controlShape)
.padding(16.dp, 12.dp)
) {
innerTextField()
}
}
)
}


Подробнее здесь: https://stackoverflow.com/questions/792 ... ctextfield
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»