这可能是一个非常简单的问题,但我仍然坚持这一问题。
我的函数在我的应用程序中被多次调用。我想重构它,但是我不知道如何将findViewByIdas 的值作为参数传递。
请问你知道怎么做吗?
public void configureToolbar() {
mToolbar = (Toolbar) findViewById(R.id.activitySettingsToolbar);
mToolbar.setElevation(0);
mToolbar.setTitle("");
setSupportActionBar(mToolbar);
}
Run Code Online (Sandbox Code Playgroud)
编辑:
到目前为止,我可以configureToolbar(Activity activity, Toolbar mToolbar)使用以下结果执行此操作:
public void configureToolbar(Activity activity, Toolbar toolbar) {
toolbar= (Toolbar) findViewById(R.id.activitySettingsToolbar);
toolbar.setElevation(0);
toolbar.setTitle("");
((AppCompatActivity)activity).setSupportActionBar(toolbar);
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我想更改布局,则需要能够将其作为参数传递:/
基本上,我需要选择多个图像。当我选择多个图像时,我的代码工作正常,但当我选择单个图像时,它不起作用。
我正在使用此代码来选择图像
public void getPhotoFromGallery(){
Intent intent = new Intent();
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Picture"), 1);
}
Run Code Online (Sandbox Code Playgroud)
我的 onActivityResult() 是
super.onActivityResult(requestCode, resultCode, data);
Log.i("onActivityResult: ", "STARTED");
if(requestCode == 1 && resultCode == RESULT_OK && data!=null){
try {
Log.i("Error: ", String.valueOf(data));
ClipData mClipData = data.getClipData();
Log.i("Error: ", String.valueOf(mClipData));
.....
.....
}
catch (Exception e){
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我选择多个图像时,我的代码工作正常。但是当我选择单个图像时,data.getClipData() 返回 null。我基本上需要所有选定图像的 URI 列表。我不明白这个问题。此外,String.valueof(data) 显示当选择一张图像时存在 URI,但 data.getClipData() 仍返回 null。
我有一个带有房间数据库的应用程序。我如何知道已达到数据存储的最大限制?如果应用程序超出该限制会发生什么情况。它会影响已存储的数据还是只是停止添加新数据?
我正在活动的 onCreate 中设置夜间模式。因此,应用程序中的每个活动都会变成夜间模式,并且之前的所有活动都会重新创建。但我只需要该特定活动处于夜间模式,而所有其他活动都处于浅色模式。如何实现这一目标?下面的代码行我在活动的 oncreate 中使用以设置为夜间模式。
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
所以我有两个网址,一个用于音频,一个用于视频。我想一起玩它们,但确实找不到任何有关此的文档。
我在我的应用中使用 Firebase 身份验证。我更新电子邮件如下:
firebaseAuth.currentUser?.updateEmail(email)
Run Code Online (Sandbox Code Playgroud)
电子邮件正在 100% 更新(必要时我也会重新验证)。我的问题是在更改电子邮件后,用户正在注销其帐户,必须再次登录。
当我打电话
val user = firebaseAuth.currentUser
Run Code Online (Sandbox Code Playgroud)
更新电子邮件后,用户为空,我的应用程序希望您使用新的电子邮件地址再次登录。
这是正确的行为吗?更改帐户电子邮件后必须再次登录,这会导致非常糟糕的用户体验。
我正在尝试为 Mapbox Android 启用缩放控件,但都没有启用 XML
mapbox:mapbox_uiZoomControls="true"
Run Code Online (Sandbox Code Playgroud)
也不是 Kotlin/Java
mapboxMap.getUiSettings().setZoomControlsEnabled(true)
Run Code Online (Sandbox Code Playgroud)
适用于 SDK 8.6.1 - 两者似乎都已弃用。任何想法如何启用此控件以及它是否可用?
当我尝试在手机上运行 flutter 应用程序时,出现此错误
Error: ADB exited with exit code 1
Performing Streamed Install
adb: failed to install C:\Users\kavis\OneDrive\Desktop\New
folder\care_receiver_app\ss_carereceiver_app\build\app\outputs\flutter-apk\app.apk:
Failure [INSTALL_PARSE_FAILED_MANIFEST_MALFORMED: Failed parse during installPackageLI:
/data/app/vmdl378681921.tmp/base.apk (at Binary XML file line #26):
com.owaslo.sukithasagayo.carereceiver.mainActivity: Targeting S+ (version 31 and above)
requires that an explicit value for android:exported be defined when intent filters are
present]
Error launching application on Pixel 6.
Run Code Online (Sandbox Code Playgroud)
我在这里阅读了许多其他有关它的问题,但到目前为止我还没有找到解决方案,任何人都可以查看我的清单并告诉我我做错了什么吗?
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.owaslo.sukithasagayo.carereceiver">
<application
android:label="Sukitha Sagayo"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<meta-data
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme"
/>
<meta-data
android:name="io.flutter.embedding.android.SplashScreenDrawable" …Run Code Online (Sandbox Code Playgroud)