获取设备的宽度和高度并相应地以编程方式设置图像/按钮大小是一个坏习惯.
我发现在布局和密度上使用不同的文件夹是不准确的,因为它在某些设备上给我带来了奇怪的结果(在无关紧要的情况下)
感谢您的体验.谢谢
我正在使用expandablelistview.无论如何我可以在单击里面的图像时展开组行?我知道要让图像响应点击,我必须设置它的焦点.现在,一旦此图像响应click(在我的客户适配器内),我如何以编程方式扩展/折叠它所属的特定组行?
谢谢
我正在尝试缩放 SD 卡中的位图并将其写入手机内存。然后稍后对其进行解码以将其添加到HashMap.
问题是我收到文件未找到异常,尽管路径正确并且缩放图像存在(我检查过)
这是保存的部分
Bitmap yourSelectedImage = BitmapFactory.decodeStream(imageStream, null, options );
File imageRootPath = getFilesDir();
File imageRoot = new File(imageRootPath, imagUri.getLastPathSegment()+".png");
FileOutputStream out = new FileOutputStream(imageRoot);
yourSelectedImage.compress(Bitmap.CompressFormat.PNG, 90, out);
Run Code Online (Sandbox Code Playgroud)
这是我读取文件时的部分
try {
Uri mainImgeUri = Uri.parse(imageRoot.toString());
File imageFile = new File(mainImgeUri.toString());
if(imageFile.exists()){
System.out.println("it does");
}
InputStream imageStream = ListPropertiesBaseActivity.this.getContentResolver().openInputStream(mainImgeUri); // I am getting file not found error
Bitmap yourSelectedImage =BitmapFactory.decodeStream(imageStream);
hmBitmap.put(ID, yourSelectedImage);
imageStream.close();
} catch (Exception e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
难道是OpenInputStream无法读取手机内存?或者保存后的图像可能不好?
虽然我可以通过手动浏览文件并打开它来查看它
请注意,执行了System.out.Println,因此这意味着该文件存在
我按照android docs的建议在内部存储上创建文件.准确地说,文件是在内部存储中的特定目录下创建的.我使用模式world_readable模式执行此操作.然后我尝试使用电子邮件程序附加文件.我能够连接文件,但发送电子邮件失败(似乎不是加载文件)我相信它是内部存储/许可的东西.
任何人都知道如何解决它或一个工作的例子?将外部存储上的所有东西都转换成是很糟糕的.
谢谢
Ps:我检查了其他线程,他们似乎没有解决方案(旧线程)
我试图在3个视图垂直布局时创建一个相对布局.第一个视图是文本,应该占用屏幕的10%.第二个视图是图像,应该占据屏幕的50%.第3个视图是文本,应该占用剩余的40%.
我这样做的方法是手动调整图像的尺寸,并通过查看它估计它接近我想要的.我相信这不是正确的方法.那我该怎么办呢?基本上我怎么能明智地划分屏幕百分比,我可以用相对布局来做
谢谢
我正在实现一种方法,用户可以从应用程序设置中禁用屏幕旋转.如果选中此框,则Activity可以自动旋转任何一个框并按照手机旋转设置进行操作.如果未选中,则禁用自动旋转.
我知道如何做到这一点每个Activity这样的
if(!GlobalVar.sharedPreferences_static.isAutoRotate()){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}else{
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_USER);
}
Run Code Online (Sandbox Code Playgroud)
有没有办法可以为所有活动(整个应用程序)执行此操作而不是为每个活动执行此操作Activity?谢谢.
我有一个场景,我需要使用 来创建用户Auth并将更多信息(例如业务名称和类型)添加到 Firestore 数据库。Firestore 作为事务/批处理操作,但仅适用于 Firestore。
有没有一种方法可以执行Auth诸如创建和 Firestore 数据插入之类的操作。两种操作都必须成功或失败。现在我将它们链接起来,但我会担心一个失败而另一个成功需要优雅地处理。
谢谢
java android firebase firebase-authentication google-cloud-firestore
查询作为地图数组的字段的正确方法是什么.
目前的结构是
Collection1
Document1
-papers: <---- This is an array
(0):
-Name:abc
-Id:123
(1):
-Name:xyz
-Id:456
Run Code Online (Sandbox Code Playgroud)
这是我的代码
DocumentReference docRef = db.collection("Collection1").document("Document1");
docRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if (task.isSuccessful()) {
DocumentSnapshot document = task.getResult();
if (document != null && document.exists()) {
//?? how can I retrieve papers
}
}
});
Run Code Online (Sandbox Code Playgroud)
基本上我是检索它并将其转换为ArrayList>然后循环它以创建我的最终ArrayList?
或者它是如何工作的?
我正在使用以下物料按钮:
<android.support.design.button.MaterialButton
android:id="@+id/bFavourite" style="@style/Widget.MaterialComponents.Button.UnelevatedButton.Icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:insetTop="0dp"
android:insetBottom="0dp"
android:textAllCaps="false"
android:textSize="20sp"
app:backgroundTint="@color/main_dark_blue"
app:backgroundTintMode="src_over"
app:cornerRadius="0dp"
app:icon="@drawable/heart_filled"
app:iconGravity="textStart"
app:iconPadding="0dp" />
Run Code Online (Sandbox Code Playgroud)
heart_filled是红色心脏的png。但是,所显示的图标没有任何颜色(即白色的心)。为什么没有显示图像的实际颜色?谢谢
我知道这似乎是一个微不足道的问题,但我找不到至少能让我安心的答案。
如果移动应用程序正在与服务器进行通信,那么通常他们会登录并获得访问令牌,他们可以在任何未来请求的剩余会话中使用该令牌。
为什么不只是在每个请求中通过 HTTPS 传递用户名和密码而不是访问令牌。访问令牌需要通过数据库进行验证,用户名/密码的组合也是如此。如果他们做同样的事情,为什么还要付出访问令牌的额外努力?我知道我错过了一些东西,但我无法弄清楚