0

while launching the app i am facing following error.

07-03 01:47:06.218: E/AndroidRuntime(1171): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.wifidemo/com.example.wifidemo.WifiDemoActivity}: android.view.InflateException: Binary XML file line #1: Error inflating class android.widget.RelativeLayout
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1970)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.ActivityThread.access$600(ActivityThread.java:128)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.os.Handler.dispatchMessage(Handler.java:99)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.os.Looper.loop(Looper.java:137)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.ActivityThread.main(ActivityThread.java:4517)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at java.lang.reflect.Method.invokeNative(Native Method)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at java.lang.reflect.Method.invoke(Method.java:511)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:995)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:762)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at dalvik.system.NativeStart.main(Native Method)
07-03 01:47:06.218: E/AndroidRuntime(1171): Caused by: android.view.InflateException: Binary XML file line #1: Error inflating class android.widget.RelativeLayout
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.LayoutInflater.createView(LayoutInflater.java:606)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:653)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:678)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.LayoutInflater.inflate(LayoutInflater.java:466)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:283)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.Activity.setContentView(Activity.java:1927)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at com.example.wifidemo.WifiDemoActivity.onCreate(WifiDemoActivity.java:31)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.Activity.performCreate(Activity.java:4597)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
07-03 01:47:06.218: E/AndroidRuntime(1171):     ... 11 more
07-03 01:47:06.218: E/AndroidRuntime(1171): Caused by: java.lang.reflect.InvocationTargetException
07-03 01:47:06.218: E/AndroidRuntime(1171):     at java.lang.reflect.Constructor.constructNative(Native Method)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.LayoutInflater.createView(LayoutInflater.java:586)
07-03 01:47:06.218: E/AndroidRuntime(1171):     ... 23 more
07-03 01:47:06.218: E/AndroidRuntime(1171): Caused by: android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f060000 a=-1 r=0x7f060000}
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.content.res.Resources.loadDrawable(Resources.java:1936)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.content.res.TypedArray.getDrawable(TypedArray.java:602)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.View.<init>(View.java:2867)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.View.<init>(View.java:2804)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.view.ViewGroup.<init>(ViewGroup.java:696)
07-03 01:47:06.218: E/AndroidRuntime(1171):     at android.widget.RelativeLayout.<init>(RelativeLayout.java:174)

I have clean and build the project, but exception is still occuring.

XML code.

<RelativeLayout 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:background="@style/AppBaseTheme"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".WifiDemoActivity" >

    <TextView
        android:id="@+id/tv_wifi_statustext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Wifi Status" />

    <ProgressBar
        android:id="@+id/scan_bar"
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/tv_wifi_statustext"
        android:layout_alignRight="@+id/button_scan"
        android:layout_below="@+id/button_wifi_on_off"
        android:layout_marginTop="20dp" />

    <ToggleButton
        android:id="@+id/button_wifi_on_off"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/tv_wifi_statustext"
        android:layout_marginLeft="70dp"
        android:layout_toRightOf="@+id/tv_wifi_statustext"
        android:text="Off" />

    <Button
        android:id="@+id/button_scan"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/button_wifi_on_off"
        android:layout_toRightOf="@+id/button_wifi_on_off"
        android:text="@string/Scan" />

    <TextView
        android:id="@+id/txt_status"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_alignLeft="@+id/scan_bar"
        android:layout_alignRight="@+id/scan_bar"
        android:layout_below="@+id/scan_bar"
        android:layout_marginTop="20dp"/>

</RelativeLayout>

Activity Part

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_wifi_demo);
    initializeView();
    initializeListener();
}

private void initializeListener() {
    wifistatelistener = new WifistateListener();
    wifi_ONOFF.setOnCheckedChangeListener(wifistatelistener);
}

private void initializeView() {
    wifi_ONOFF = (ToggleButton) findViewById(R.id.button_wifi_on_off);
    button_wifiscan = (Button) findViewById(R.id.button_scan);
    wifiscanprogressBar = (ProgressBar) findViewById(R.id.scan_bar);
    status = (TextView) findViewById(R.id.txt_status);
}

1 Answers1

0

I believe, this is the culprit:

android:background="@style/AppBaseTheme"

android:background expects some drawable, and the style is obviously not what it wants.

I don't know what AppBaseTheme contains, so I can't say exactly what is the best way to fix this in your case, but I have some suggestions. The easiest one is to simply set the background to some explicit image. A more complex solution is to declare an attribute in your theme, apply the theme to the application or the activity (if it isn't already applied), and reference this attribute with the ?attr/ syntax.

Malcolm
  • 41,014
  • 11
  • 68
  • 91