我遇到一个错误,当我按下一个按钮形式的mainactivity它将进入一个活动,但它崩溃.....我从来没有遇到过这个错误,你们可以帮助我吗
Process: com.sp.ez_mart, PID: 9514
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sp.ez_mart/com.sp.ez_mart.navigation_front}: android.content.res.Resources$NotFoundException: Resource ID #0x7f040031
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2726)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2787)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1504)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6247)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:872)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:762)
Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f040031
at android.content.res.ResourcesImpl.getValue(ResourcesImpl.java:207)
at android.content.res.Resources.loadXmlResourceParser(Resources.java:2107)
at android.content.res.Resources.getLayout(Resources.java:1120)
at android.view.LayoutInflater.inflate(LayoutInflater.java:424)
at android.view.LayoutInflater.inflate(LayoutInflater.java:377)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at com.sp.ez_mart.navigation_front.onCreate(navigation_front.java:37)
at android.app.Activity.performCreate(Activity.java:6754)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2679)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2787)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1504)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6247)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:872)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:762)
申请已终止。
这里是错误来自的
public class navigation_front extends AppCompatActivity {
Button scan_btn;
Spinner dest;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.navigation_front);
scan_btn = (Button) findViewById(R.id.scan_btn);
final Activity activity = this;
scan_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
IntentIntegrator integrator = new IntentIntegrator(activity);
integrator.setDesiredBarcodeFormats(IntentIntegrator.QR_CODE_TYPES);
integrator.setPrompt("Please Scan");
integrator.setCameraId(0);
integrator.setBeepEnabled(false);
integrator.setBarcodeImageEnabled(false);
integrator.initiateScan();
}
});
dest = (Spinner) findViewById(R.id.edit_destination);
final ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.destination_array, R.layout.support_simple_spinner_dropdown_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
dest.setAdapter(adapter);
dest.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String[] dataArray = getResources().getStringArray(R.array.destination_array);
String type = dataArray[position];
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
final EditText edit = (EditText) findViewById(R.id.Edit_current);
final Spinner spin = (Spinner) findViewById(R.id.edit_destination);
final Button btn = (Button) findViewById(R.id.navigate);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(navigation_front.this, NavigateImage.class);
if (edit.getText().toString().trim().equals("Entrance") && spin.getSelectedItem().equals("Vegetables")) {
i.putExtra("image", R.drawable.entrance_vege);
startActivity(i);
} else if (edit.getText().toString().trim().equals("Entrance") && spin.getSelectedItem().equals("Canned-Food")) {
i.putExtra("image", R.drawable.entrance_can);
startActivity(i);
} else {
Toast.makeText(getApplicationContext(), "Please Enter Valid Value.",
Toast.LENGTH_SHORT).show();
}
}
});
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
if(result.getContents() != null) {
if (result.getContents() == null) {
Log.d("MainActivity", "Cancelled scan");
Toast.makeText(this, "Cancelled", Toast.LENGTH_LONG).show();
} else {
EditText editText = (EditText) findViewById(R.id.Edit_current);
editText.setText("" + result.getContents(), TextView.BufferType.EDITABLE);
}
这是xml
<?xml version="1.0" encoding="utf-8"?>
><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1"
android:orientation="vertical"
android:background="@color/zxing_custom_possible_result_points">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="24dp"></LinearLayout>
<TextView
android:text="Current Location :"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:fontFamily="cursive"
android:textSize="30sp"
android:textAlignment="viewStart"
android:typeface="serif"
android:textStyle="normal|bold"
android:textAllCaps="false" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPersonName"
android:ems="10"
android:id="@+id/Edit_current"
android:selectAllOnFocus="true"
tools:backgroundTint="@color/common_action_bar_splitter"
android:background="@color/common_action_bar_splitter"
android:layout_weight="0.21"
android:hint="Scan/Type Location"
android:textStyle="normal|italic" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.14"></LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="115dp">
<Button
android:text="Scan Nearest Qr Code"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/scan_btn"
android:background="@color/zxing_possible_result_points"
android:elevation="0dp"
android:typeface="monospace"
android:textSize="18sp"
android:visibility="visible" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="224dp"
android:elevation="1dp"
android:weightSum="1">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="35dp"></LinearLayout>
<TextView
android:text="Destination :"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/Destination"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:fontFamily="cursive"
android:textSize="30sp"
android:textStyle="normal|bold" />
<Spinner
android:layout_width="match_parent"
android:layout_height="37dp"
android:id="@+id/edit_destination" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="174dp">
<Button
android:text="Navigate Me!"
android:id="@+id/navigate"
android:layout_width="120dp"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:layout_height="55dp"
android:textAppearance="@style/TextAppearance.AppCompat.Subhead" />
</RelativeLayout>
</LinearLayout>
</LinearLayout
新错误
Error:Error converting bytecode to dex:
Cause: java.lang.RuntimeException: Exception parsing classes
Error:Error converting bytecode to dex:
Cause: java.lang.RuntimeException: Exception parsing classes
Error:Error converting bytecode to dex:
Cause: java.lang.RuntimeException: Exception parsing classes
Error:3 errors; aborting
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException
答案 0 :(得分:0)
似乎您错过了布局标记。使用适当的布局:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.navigation_front); //<---here
........
.........
正确对齐代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1"
android:orientation="vertical"
android:background="@color/zxing_custom_possible_result_points">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="24dp"></LinearLayout>
<TextView
android:text="Current Location :"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:fontFamily="cursive"
android:textSize="30sp"
android:textAlignment="viewStart"
android:typeface="serif"
android:textStyle="normal|bold"
android:textAllCaps="false" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPersonName"
android:ems="10"
android:id="@+id/Edit_current"
android:selectAllOnFocus="true"
tools:backgroundTint="@color/common_action_bar_splitter"
android:background="@color/common_action_bar_splitter"
android:layout_weight="0.21"
android:hint="Scan/Type Location"
android:textStyle="normal|italic" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.14"></LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="115dp">
<Button
android:text="Scan Nearest Qr Code"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/scan_btn"
android:background="@color/zxing_possible_result_points"
android:elevation="0dp"
android:typeface="monospace"
android:textSize="18sp"
android:visibility="visible" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="224dp"
android:elevation="1dp"
android:weightSum="1">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="35dp"></LinearLayout>
<TextView
android:text="Destination :"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/Destination"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:fontFamily="cursive"
android:textSize="30sp"
android:textStyle="normal|bold" />
<Spinner
android:layout_width="match_parent"
android:layout_height="37dp"
android:id="@+id/edit_destination" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="174dp">
<Button
android:text="Navigate Me!"
android:id="@+id/navigate"
android:layout_width="120dp"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:layout_height="55dp"
android:textAppearance="@style/TextAppearance.AppCompat.Subhead"/>
</RelativeLayout>
</LinearLayout>
</LinearLayout>
答案 1 :(得分:0)
试试这个:
替换它:
setContentView(navigation_front);
使用:
setContentView(R.layout.navigation_front);
在这里你忘了添加 R.layout ..这就是为什么你得到错误 ResourceNotFound
希望这会有所帮助..(: