java - 崩溃主细节流(Android Studio)应用程序〜在Mac上
问题描述
我正在 android studio 上尝试主详细信息流,作为 mac 用户,我意识到文件的名称与 windows 中的名称不同。
例如,我看不到 dummycontent.java 但我看到 placeholder.java 等等。
我正在尝试构建一个简单的应用程序,该应用程序显示 3 个项目,单击后每个项目都应打开一个新活动:
这是我的 placeholder.java:
package com.example.selab5.placeholder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class PlaceholderContent {
/**
* An array of sample (placeholder) items.
*/
public static final List<PlaceholderItem> ITEMS = new ArrayList<PlaceholderItem>();
/**
* A map of sample (placeholder) items, by ID.
*/
public static final Map<String, PlaceholderItem> ITEM_MAP = new HashMap<String, PlaceholderItem>();
private static final int COUNT = 3;
static {
addItem(new PlaceholderItem("1","Berry Cake","page1"));
addItem(new PlaceholderItem("2","Molten Cake","page2"));
addItem(new PlaceholderItem("3","Tart","page3"));
}
private static void addItem(PlaceholderItem item) {
ITEMS.add(item);
ITEM_MAP.put(item.id, item);
}
private static PlaceholderItem createPlaceholderItem(int position) {
return new PlaceholderItem(String.valueOf(position), "Item " + position, makeDetails(position));
}
private static String makeDetails(int position) {
StringBuilder builder = new StringBuilder();
builder.append("Details about Item: ").append(position);
for (int i = 0; i < position; i++) {
builder.append("\nMore details information here.");
}
return builder.toString();
}
/**
* A placeholder item representing a piece of content.
*/
public static class PlaceholderItem {
public final String id;
public final String content;
public final String details;
public PlaceholderItem(String id, String content, String details) {
this.id = id;
this.content = content;
this.details = details;
}
@Override
public String toString() {
return content;
}
}
}
这是我在 ItemDetailFragment.java 中的 onCreateView 方法:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
binding = FragmentItemDetailBinding.inflate(inflater, container, false);
//View rootView = binding.getRoot();
View rootView = inflater.inflate(R.layout.fragment_item_detail, container, false);
CollapsingToolbarLayout toolbarLayout = rootView.findViewById(R.id.toolbar_layout);
// Show the placeholder content as text in a TextView & in the toolbar if available.
if (mItem.id.equals("1")) {
rootView = inflater.inflate(R.layout.activity_berry, container,false);
}
else if (mItem.id.equals("2")){
rootView=inflater.inflate(R.layout.activity_molten,container,false);
}
else if(mItem.id.equals("3")){
rootView=inflater.inflate(R.layout.activity_tart,container,false);
}
return rootView;
}
每次我在模拟器上运行该应用程序时,它都会不断崩溃。请帮忙。谢谢!
解决方案
推荐阅读
- android - RxJava Single.toCompletable() 似乎以某种方式打破了 Single
- c# - 是否可以在 IHttpModule 中访问 IHttpContext.LogRequest 中的 SessionId
- c - 由于我的字符串格式以及所使用的参数,我的 printf 格式说明符将无法编译
- python - web3@1.0.0-beta.26 使用 Yarn 安装失败
- java - 在 JavaFX 中使用窗格进行文本绑定
- javascript - 数组推送值不是字符串
- vuejs2 - 创建 Vue 应用程序:vue create 不起作用
- php - 将图像标题插入数据库不起作用?
- javascript - 使用 Javascript 在 Javascript 中选择图像
- javascript - 将数组拆分为垂直数组