callstack / callstack/react-native-paper

Input component labels in outlined mode need some work

未关闭
#4,235 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
TypeScript
星标
14.5k
派生
2.2k
平均合并
5 天 23 小时
30 天内合并 PR
12

描述

### Current behaviour

1. When background and primary are close to each other we are not able to style text-color of labels on input-components separately from primary color in theme. It's weird that primary is used both in backgrounds and texts without escape hatches.
2. When placing a **rounded** `` with `mode="outlined"` and `outlineStyle={{borderColor:'transparent'}}` on a elevated ``, then the backgroundColor of the label gets a weird shape.

### Expected behaviour

I expect:
- The rounding of the input to hide the label background
- The label background to be styleable without creating a label element
- Each of the inputs parts to have to have escapeHatches for styling, such as these props, or a style function that takes it's state(focused, normal, disabled) `labelStyle`, `activeLabelStyle`, `inputStyle`, `activeInputStyle`,

### How to reproduce?

https://snack.expo.dev/t8WLJwSQ6

### Preview

### **Background is dark to show low contrast between background and primary text**
![IMG_2656](https://github.com/callstack/react-native-paper/assets/457653/25b938a3-03e3-4468-a8b6-a8d9c6035d76)
### **Background is set to red to highlight the weird shape of the label**
![IMG_2655](https://github.com/callstack/react-native-paper/assets/457653/9780026f-bb2e-45e4-b97d-7bcb872d1402)

### What have you tried so far?

Creating custom label components without getting it to work consistently across platforms (android & iOS)
### Your Environment

| software | version
| --------------------- | -------
| ios | 17.1.2
| android | 13
| react-native | 0.72.1
| react-native-paper | 5.11.4
| node | 18.13.0
| npm or yarn | 9.6.3
| expo sdk | any/not-applicable/47 in snack

贡献指南

打开贡献指南

调研方向

从链接的 Snack 复现示例以及在 Surface 上渲染的带边框圆角 TextInput 开始。跟踪 TextInput 标签的背景和颜色在 Android 和 iOS 上处于聚焦状态和普通状态时的处理方式。完成的标准是:圆角标签背景在视觉上正确,并且可以通过组件 API 独立设置标签和输入框的颜色。

由索引模型根据 Issue 内容生成。

评估

技术栈
react-native, typescript
领域
design, frontend
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
冷清
描述清晰度
基本清楚
新手友好度
45/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。