我有一个位图,我想将其保存到应用程序文件夹中。我尝试使用这些代码:
ContextWrapper contextWrapper = new ContextWrapper(context.getApplicationContext());
File directory = contextWrapper.getDir("tabs", Context.MODE_PRIVATE);
if (!directory.exists())
directory.mkdir();
String fname = "Image.jpg";
File file = new File(directory, fname);
FileOutputStream fos = null;
try {
fos = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 50, fos);
fos.close();
} catch (Exception e) {
Log.e("SAVE_IMAGE", e.getMessage(), e);
}
Run Code Online (Sandbox Code Playgroud)
现在,我有两个问题。
“File.mkdir()”的结果被忽略
我为我的活动创建一个数据模型,如下所示:
data class ActivityModel (
var font: Int
)
Run Code Online (Sandbox Code Playgroud)
并在活动中将值设置为该字体,如下所示:
items.font = R.font.san_francisco
Run Code Online (Sandbox Code Playgroud)
最后,在 XML 布局中使用它,如下所示:
android:fontFamily="@{ResourcesCompat.getFont(context, items.font)}"
Run Code Online (Sandbox Code Playgroud)
我还将此变量导入到 XML 布局中:
<import type="androidx.core.content.ContextCompat"/>
<import type="androidx.core.content.res.ResourcesCompat"/>
Run Code Online (Sandbox Code Playgroud)
但通过这种方式,应用程序不会构建,并且java(生成的)目录中出现错误。
那么,如何将字体系列设置为编辑文本?
在 java 中,我从服务器获得响应并将值添加到数据模型类,如下所示:
JSONObject jsonObject = new JSONObject(response);
JSONArray jsonArray = jsonObject.getJSONArray("searches");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject1 = jsonArray.getJSONObject(i);
SearchHomeModel searchHomeModel = new SearchHomeModel();
searchHomeModel.setWord(jsonObject1.getString("word"));
searchHomeModel.setUrl(jsonObject1.getString("url"));
JSONArray jsonArray1 = new JSONArray(jsonObject1.getString("user"));
for (int j = 0; j < jsonArray1.length(); j++) {
JSONObject jsonObject2 = jsonArray1.getJSONObject(j);
searchHomeModel.setUsername(jsonObject2.getString("username"));
searchHomeModel.setId(jsonObject2.getString("id"));
searchHomeModel.setImage(jsonObject2.getString("image"));
}
arrayList.add(searchHomeModel);
}
Run Code Online (Sandbox Code Playgroud)
所以,我切换到 kotlin,当我调用我的数据模型类时,我应该立即设置该值。
那么,如何从几个不同的地方(在“for”循环 JSONArray 中)设置数据类中的值?
这是 Java 中的 SearchHomeModel 类:
public class SearchHomeModel {
private String word, url, username, id, image, country, …Run Code Online (Sandbox Code Playgroud)