Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法启动活动组件信息{}:android.view.InflateException:二进制XML文件行#4:膨胀类片段时出错_Java_Android_Android Fragments_Fragment - Fatal编程技术网

Java 无法启动活动组件信息{}:android.view.InflateException:二进制XML文件行#4:膨胀类片段时出错

Java 无法启动活动组件信息{}:android.view.InflateException:二进制XML文件行#4:膨胀类片段时出错,java,android,android-fragments,fragment,Java,Android,Android Fragments,Fragment,每件事都会成功,但当我点击“回收者查看项目”并打开“详细信息”活动时,应用程序崩溃了 我知道这个问题有很多答案,我都试过了,但是没有人能解决这个问题 当我从片段中获取参数时,我也得到了空指针异常 主片段中的onclick接口 public void onClick(long date) { Uri todayUri = WeatherContract.WeatherEntry.buildWeatherUriWithDate(date); DetailsFragment detai

每件事都会成功,但当我点击“回收者查看项目”并打开“详细信息”活动时,应用程序崩溃了

我知道这个问题有很多答案,我都试过了,但是没有人能解决这个问题 当我从片段中获取参数时,我也得到了空指针异常

主片段中的onclick接口

public void onClick(long date) {
    Uri todayUri = WeatherContract.WeatherEntry.buildWeatherUriWithDate(date);
    DetailsFragment detailsFragment = (DetailsFragment) getActivity().getSupportFragmentManager().findFragmentById(R.id.details_fragment);
    if (todayUri != null) {
        String myUri = todayUri.toString();

        if (detailsFragment != null) {
            DetailsFragment detailsFragment1 = new DetailsFragment();
            Bundle bundle = new Bundle();
            bundle.putString(DetailsFragment.FRAGMENT_KEY, myUri);
            detailsFragment1.setArguments(bundle);
            detailsFragment = detailsFragment1;
            getActivity().getSupportFragmentManager().beginTransaction()
                    .replace(R.id.details_fragment, detailsFragment).commit();
        } else {
            Intent detailsActivity = new Intent();
            detailsActivity.setClass(getActivity(), DetailsActivity.class);
            detailsActivity.setData(todayUri);

            startActivity(detailsActivity);
        }
    }
}
我的详细资料活动

package com.example.freewaresys.sunshine;

import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;

public class DetailsActivity extends FragmentActivity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_details);
    Uri uri = getIntent().getData();
    String myUri = uri.toString();
    Bundle bundle = new Bundle();
    bundle.putString(DetailsFragment.FRAGMENT_KEY, myUri);
    DetailsFragment detailsFragment = new DetailsFragment();
    detailsFragment.setArguments(bundle);
    getSupportFragmentManager().beginTransaction()
            .add(R.id.activity_details_fragment, detailsFragment).commit();

}
}

我的详细活动布局

<?xml version="1.0" encoding="utf-8"?>


<fragment
xmlns:android="http://schemas.android.com/apk/res/android"
android:name="com.example.freewaresys.sunshine.DetailsFragment"
android:id="@+id/activity_details_fragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />

DetailsFragment
类中,使用片段的视图引用项…将代码从
onActivityCreated
移动到
onCreateView()

代码段:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {

    View v = inflater.inflate(R.layout.fragment_details, container, false);
    Bundle bundle = this.getArguments();
    String uriString = bundle.getString(FRAGMENT_KEY);
    mUri = Uri.parse(uriString);
    // Inflate the layout for this fragment
    date = (TextView) v.findViewById(R.id.date);
    weatherDescrirption = (TextView) v.findViewById(R.id.weather_description);
    weatherIcon = (ImageView) v.findViewById(R.id.weather_icon);
    lowTemperature = (TextView) v.findViewById(R.id.low_temperature);
    highTemperature = (TextView) v.findViewById(R.id.high_temperature);
    humidity = (TextView) v.findViewById(R.id.humidity);
    pressure = (TextView) v.findViewById(R.id.pressure);
    windMeasurement = (TextView) v.findViewById(R.id.wind_measurement);
    getActivity().getSupportLoaderManager().initLoader(LOADER_ID, null, this);
    return v;
}


@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
}

您必须为您的


请尝试添加

<meta-data android:name="com.google.android.gms.version"

请发布
主要天气信息
额外天气详细信息的xml。谢谢你的帮助,但我仍然遇到同样的问题谢谢你的帮助,但我仍然遇到同样的问题请重新构建并运行
.freewaresys.sunshine E/AndroidRuntime: FATAL EXCEPTION: main
                                                                              Process: com.example.freewaresys.sunshine, PID: 23552
                                                                              java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.freewaresys.sunshine/com.example.freewaresys.sunshine.DetailsActivity}: android.view.InflateException: Binary XML file line #4: Error inflating class fragment
                                                                                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2377)
                                                                                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2429)
                                                                                  at android.app.ActivityThread.access$800(ActivityThread.java:151)
                                                                                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1342)
                                                                                  at android.os.Handler.dispatchMessage(Handler.java:110)
                                                                                  at android.os.Looper.loop(Looper.java:193)
                                                                                  at android.app.ActivityThread.main(ActivityThread.java:5333)
                                                                                  at java.lang.reflect.Method.invokeNative(Native Method)
                                                                                  at java.lang.reflect.Method.invoke(Method.java:515)
                                                                                  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:829)
                                                                                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645)
                                                                                  at dalvik.system.NativeStart.main(Native Method)
                                                                               Caused by: android.view.InflateException: Binary XML file line #4: Error inflating class fragment
                                                                                  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:713)
                                                                                  at android.view.LayoutInflater.inflate(LayoutInflater.java:469)
                                                                                  at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
                                                                                  at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
                                                                                  at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:341)
                                                                                  at android.app.Activity.setContentView(Activity.java:1948)
                                                                                  at com.example.freewaresys.sunshine.DetailsActivity.onCreate(DetailsActivity.java:12)
                                                                                  at android.app.Activity.performCreate(Activity.java:5343)
                                                                                  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088)
                                                                                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2331)
                                                                                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2429) 
                                                                                  at android.app.ActivityThread.access$800(ActivityThread.java:151) 
                                                                                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1342) 
                                                                                  at android.os.Handler.dispatchMessage(Handler.java:110) 
                                                                                  at android.os.Looper.loop(Looper.java:193) 
                                                                                  at android.app.ActivityThread.main(ActivityThread.java:5333) 
                                                                                  at java.lang.reflect.Method.invokeNative(Native Method) 
                                                                                  at java.lang.reflect.Method.invoke(Method.java:515) 
                                                                                  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:829) 
                                                                                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645) 
                                                                                  at dalvik.system.NativeStart.main(Native Method) 
                                                                               Caused by: java.lang.NullPointerException
                                                                                  at com.example.freewaresys.sunshine.DetailsFragment.onCreateView(DetailsFragment.java:66)
                                                                                  at android.support.v4.app.Fragment.performCreateView(Fragment.java:2192)
                                                                                  at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1255)
                                                                                  at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1472)
                                                                                  at android.support.v4.app.FragmentManagerImpl.addFragment(FragmentManager.java:1691)
                                                                                  at android.support.v4.app.FragmentManagerImpl.onCreateView(FragmentManager.java:3440)
                                                                                  at android.support.v4.app.FragmentController.onCreateView(FragmentController.java:120)
                                                                                  at android.support.v4.app.FragmentActivity.dispatchFragmentsOnCreateView(FragmentActivity.java:378)
                                                                                  at android.support.v4.app.BaseFragmentActivityHoneycomb.onCreateView(BaseFragmentActivityHoneycomb.java:33)
                                                                                  at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:79)
                                                                                  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689)
                                                                                  at android.view.LayoutInflater.inflate(LayoutInflater.java:469) 
                                                                                  at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
                                                                                  at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
                                                                                  at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:341) 
                                                                                  at android.app.Activity.setContentView(Activity.java:1948) 
                                                                                  at com.example.freewaresys.sunshine.DetailsActivity.onCreate(DetailsActivity.java:12) 
                                                                                  at android.app.Activity.performCreate(Activity.java:5343) 
                                                                                  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088) 
                                                                                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2331) 
                                                                                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2429) 
                                                                                  at android.app.ActivityThread.access$800(ActivityThread.java:151) 
                                                                                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1342) 
                                                                                  at android.os.Handler.dispatchMessage(Handler.java:110) 
                                                                                  at android.os.Looper.loop(Looper.java:193) 
                                                                                  at android.app.ActivityThread.main(ActivityThread.java:5333) 
                                                                                  at java.lang.reflect.Method.invokeNative(Native Method) 
                                                                                  at java.lang.reflect.Method.invoke(Method.java:515) 
                                                                                  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:829) 
                                                                                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645) 
                                                                                  at dalvik.system.NativeStart.main(Native Method) 
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {

    View v = inflater.inflate(R.layout.fragment_details, container, false);
    Bundle bundle = this.getArguments();
    String uriString = bundle.getString(FRAGMENT_KEY);
    mUri = Uri.parse(uriString);
    // Inflate the layout for this fragment
    date = (TextView) v.findViewById(R.id.date);
    weatherDescrirption = (TextView) v.findViewById(R.id.weather_description);
    weatherIcon = (ImageView) v.findViewById(R.id.weather_icon);
    lowTemperature = (TextView) v.findViewById(R.id.low_temperature);
    highTemperature = (TextView) v.findViewById(R.id.high_temperature);
    humidity = (TextView) v.findViewById(R.id.humidity);
    pressure = (TextView) v.findViewById(R.id.pressure);
    windMeasurement = (TextView) v.findViewById(R.id.wind_measurement);
    getActivity().getSupportLoaderManager().initLoader(LOADER_ID, null, this);
    return v;
}


@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
}
<?xml version="1.0" encoding="utf-8"?>
<fragment
    xmlns:android="http://schemas.android.com/apk/res/android"
    class="com.example.freewaresys.sunshine.DetailsFragment"
    android:id="@+id/activity_details_fragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />
<meta-data android:name="com.google.android.gms.version"