PDA

View Full Version : ارور هنگام اجرای layout جدید



ilalia2
سه شنبه 28 اردیبهشت 1395, 19:59 عصر
با سلام خدمت همگی

من صفحه hello world رو روی دیوایس مجازی و فیزیکی نصب و اجرا میکنم( بدون مشکل )،
ولی وقتی یک layout ایجاد میکنم و در mainactivity هم setContentView(R.layout.layout); رو مینویسم، و بعد وقتی دوباره میخوام روی دیوایس نصبش کنم ارور میده!:

140462

اگه اطلاعات دیگه ای هم لازمه بگید تا بذارم.

لطفا راهنمایی کنید.

Nevercom
سه شنبه 28 اردیبهشت 1395, 22:14 عصر
اگر اکتیویتی جدید اضافه می کنید باید به Manifest اضافه بشه و اگر فقط Layout یک اکتیویتی رو تغییر می‌دید، مطمئن بشید که کدهای مربوط به دسترسی به یک View (با findViewById) در اکتیویتی وجود نداشته باشه که سعی کنه به شئ‌ی دسترسی پیدا کنه که در این Layout جدید وجود نداره.

درهرصورت توضیحات کامل خطا در LogCat نمایش داده میشه، اون رو بررسی کنید یا اون خطا رو اینجا قرار بدید تا بررسی بشه.

Alireza_Ar1
سه شنبه 28 اردیبهشت 1395, 23:14 عصر
با سلام خدمت همگی

من صفحه hello world رو روی دیوایس مجازی و فیزیکی نصب و اجرا میکنم( بدون مشکل )،
ولی وقتی یک layout ایجاد میکنم و در mainactivity هم setContentView(R.layout.layout); رو مینویسم، و بعد وقتی دوباره میخوام روی دیوایس نصبش کنم ارور میده!:

140462

اگه اطلاعات دیگه ای هم لازمه بگید تا بذارم.

لطفا راهنمایی کنید.


خطای داخل Logcat بزار .تا بشه دقیق نظر داد .

ilalia2
سه شنبه 28 اردیبهشت 1395, 23:57 عصر
ممنون از توجهتون
این هم تصویر logcat

140464

raha.scientific
چهارشنبه 29 اردیبهشت 1395, 21:36 عصر
شاید تو xml تون یک تگ خالی دارید. . .
(اگر تگ باز وبسته ای داشته باشید که داخلش کدی نباشه ارور نمیده ولی به محض اجرا اون پیغام متوقف شدن میاد)

gjmkdyttyhujk
پنج شنبه 30 اردیبهشت 1395, 10:48 صبح
کل محتوای لاگ کتتون رو بزارید تا بررسی کنیم.

ilalia2
جمعه 31 اردیبهشت 1395, 09:26 صبح
شاید تو xml تون یک تگ خالی دارید. . .
(اگر تگ باز وبسته ای داشته باشید که داخلش کدی نباشه ارور نمیده ولی به محض اجرا اون پیغام متوقف شدن میاد)

"""layout"""


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

</LinearLayout>

.................................................. ...................................

"""activity_main"""


<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.example.user.myapplication.MainActivity">

<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">

<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />

</android.support.design.widget.AppBarLayout>

<include layout="@layout/content_main" />

<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_dialog_email" />

</android.support.design.widget.CoordinatorLayout>

.................................................. .......................................

"""content_main.xml"""


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.example.user.myapplication.MainActivity"
tools:showIn="@layout/activity_main">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!" />
</RelativeLayout>

.................................................. .....................................

"""MainActivity"""

package com.example.user.myapplication;

import android.os.Bundle;
import android.support.design.widget.FloatingActionButton ;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}

return super.onOptionsItemSelected(item);
}
}

ilalia2
جمعه 31 اردیبهشت 1395, 09:34 صبح
کل محتوای لاگ کتتون رو بزارید تا بررسی کنیم.

140500
140501
140502

05-20 05:25:49.431 2434-2434/com.example.user.myapplication W/System: ClassLoader referenced unknown path: /data/app/com.example.user.myapplication-2/lib/x86
05-20 05:25:54.296 2434-2434/com.example.user.myapplication W/System: ClassLoader referenced unknown path: /data/app/com.example.user.myapplication-2/lib/x86
05-20 05:25:55.259 2434-2440/com.example.user.myapplication W/art: Suspending all threads took: 13.369ms
05-20 05:25:55.811 2434-2440/com.example.user.myapplication W/art: Suspending all threads took: 63.944ms
05-20 05:25:56.144 2434-2444/com.example.user.myapplication W/art: Suspending all threads took: 128.279ms
05-20 05:25:56.169 2434-2434/com.example.user.myapplication D/AndroidRuntime: Shutting down VM


--------- beginning of crash
05-20 05:25:56.170 2434-2434/com.example.user.myapplication E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.user.myapplication, PID: 2434
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.user.myapplication/com.example.user.myapplication.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.design.widget.FloatingActionButton .setOnClickListener(android.view.View$OnClickListe ner)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2416)
at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:10 2)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.jav a:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:616)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.design.widget.FloatingActionButton .setOnClickListener(android.view.View$OnClickListe ner)' on a null object reference
at com.example.user.myapplication.MainActivity.onCrea te(MainActivity.java:22)
at android.app.Activity.performCreate(Activity.java:6 237)
at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1107)
at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2369)
at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:10 2)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.jav a:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:616)

gjmkdyttyhujk
جمعه 31 اردیبهشت 1395, 11:06 صبح
خطاتون احتمالا مربوط به floating action button هست. اون رو بررسی بکنید ببینید کداشو درست وارد کرده اید یا نه.

msroid
جمعه 31 اردیبهشت 1395, 16:16 عصر
سلام

این خط رو:

setContentView(R.layout.layout);

با به صورت زیر ویرایش کنید:

setContentView(R.layout.activity_main);

و یا اگر میخواین از همون اکتیویتی layout استفاده کنید باید activity_main رو داخل اون include کنید.

ilalia2
جمعه 31 اردیبهشت 1395, 23:32 عصر
سلام

این خط رو:

setContentView(R.layout.layout);

با به صورت زیر ویرایش کنید:

setContentView(R.layout.activity_main);

و یا اگر میخواین از همون اکتیویتی layout استفاده کنید باید activity_main رو داخل اون include کنید.

بله مشکل از همین جاست، میخوام اکتیویتی layout باشه، چطور include کنم؟

msroid
شنبه 01 خرداد 1395, 15:32 عصر
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">


<include layout="@layout/activity_main" />


</LinearLayout>