我正在尝试以交互模式在文本字段中输入文本,但它不起作用。但是,在物理设备上执行此操作是可行的。
MainActivity.kt
@Preview(showSystemUi = true)
@Composable
fun HelloContentPreview()
{
HelloContent()
}
@Composable
fun HelloContent()
{
Column(modifier = Modifier.padding(16.dp)) {
var name by remember { mutableStateOf("") }
Text(
text = "Hello! $name",
modifier = Modifier.padding(bottom = 8.dp),
style = MaterialTheme.typography.h5
)
OutlinedTextField(
value = name,
onValueChange = {
name = it
Log.i(TAG, "HelloContent: onValueChange: $it")
},
label = { Text("Name") }
)
}
}
Run Code Online (Sandbox Code Playgroud)
假设我有一个名为Activity_main.xml的布局,它有一个元素:
<TextView
android:id="@+id/text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
Run Code Online (Sandbox Code Playgroud)
名为MainActivity.java 的活动。在其 onCreate 方法中,我使用 viewBinding 膨胀上述布局,并设置文本视图的文本:
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
ActivityMainBinding binding = ActivityMainBinding.inflate(getLayoutInflater());
setContentView(binding.getRoot());
binding.textView.setText("some text");
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我通过按
类似的方式重命名Activity_main.xml中 TextView 的 id ,那么 中的引用不会从 更改为Shift+F6@+id/text_view_newonCreatebinding.textView.setText("some text");binding.textViewNew.setText("some text");
这种行为是限制、错误还是我做错了什么?
我正在使用 MaterialDatePicker,但它很慢。
public class MainActivity extends AppCompatActivity
{
MaterialDatePicker.Builder<Long> datePickerBuilder;
MaterialDatePicker<Long> datePicker;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
datePickerBuilder = MaterialDatePicker.Builder.datePicker();
datePicker = datePickerBuilder.build();
Button btn = findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
datePicker.show(getSupportFragmentManager(), null);
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
第一次按下按钮时,需要 3 秒时间才会显示日期选择器。随后单击按钮时,它会在 1 秒内打开。在日期选择器中选择日期后出现滞后,它并不像您期望的那样平滑。
有什么办法解决这个问题吗?
编辑:似乎还有更多错误。通过水平滚动更改月份时存在滞后,很多时候会滑动 2-3 次,最终选择错误的月份。我认为MaterialDatePicker 不好用,UX 太差了。
我在本机反应上使用打字稿。当我的某个文件中有错误时,vscode 不会在“问题”选项卡中显示它,除非我打开了该文件。
tsconfig.json:
{
"extends": "@tsconfig/react-native/tsconfig.json"
}
Run Code Online (Sandbox Code Playgroud)
@tsconfig/react-native/tsconfig.json:
{
"$schema": "https://json.schemastore.org/tsconfig",
"display": "React Native",
"_version": "2.0.3",
"compilerOptions": {
"target": "esnext",
"module": "commonjs",
"types": ["react-native", "jest"],
"lib": [
"es2019"
],
"allowJs": true,
"jsx": "react-native",
"noEmit": true,
"isolatedModules": true,
"strict": true,
"moduleResolution": "node",
"resolveJsonModule": true,
"allowSyntheticDefaultImports": true,
"forceConsistentCasingInFileNames": true,
"esModuleInterop": true,
"skipLibCheck": true
},
"exclude": [
"node_modules",
"babel.config.js",
"metro.config.js",
"jest.config.js"
]
}
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能使所有错误都显示在问题选项卡中并且侧栏中的文件具有红色下划线?
我已经为此呆了一整天了。
\n我使用创建了一个新项目npx react-native init Project。但如果我尝试在 Android 上运行它,我会得到:
FAILURE: Build failed with an exception.\n\n* What went wrong:\nIncompatible magic value 0 in class file java/util/logging/ErrorManager\nRun Code Online (Sandbox Code Playgroud)\n我已经多次浏览过这些文档。当我跑步时npx react-native doctor,我得到这个:
Android\n\xe2\x9c\x93 JDK\n\xe2\x9c\x96 Android Studio - Required for building and installing your app on Android\n\xe2\x9c\x96 Android SDK - Required for building and installing your app on Android\n - Versions found: N/A\n - Version supported: 29.0.3\n\xe2\x9c\x93 ANDROID_HOME\nRun Code Online (Sandbox Code Playgroud)\n android ×4
react-native ×2
datepicker ×1
lag ×1
linux ×1
manjaro ×1
rename ×1
textfield ×1
typescript ×1