Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/211.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 如何在片段内实现自动图像滑块_Java_Android_Androidimageslider - Fatal编程技术网

Java 如何在片段内实现自动图像滑块

Java 如何在片段内实现自动图像滑块,java,android,androidimageslider,Java,Android,Androidimageslider,我在我的项目中使用以下库来自动滑动图像。它在活动内部工作得很好,但当涉及到片段时,当上下文作为getContext()传递时,它会抛出一个空指针异常或getActivity()而不是这个。我现在坚持这样做。 请帮忙 图书馆名称: 我的代码在片段中: SliderView sliderView = view.findViewById(R.id.ImageSlider); SliderImageAdapter adapter = new SliderImageAdapter(getContext(

我在我的项目中使用以下库来自动滑动图像。它在活动内部工作得很好,但当涉及到片段时,当上下文作为
getContext()传递时,它会抛出一个空指针异常
getActivity()
而不是
这个。我现在坚持这样做。
请帮忙

图书馆名称:

我的代码在片段中:

SliderView sliderView = view.findViewById(R.id.ImageSlider);

SliderImageAdapter adapter = new SliderImageAdapter(getContext());
adapter.setCount(5);

sliderView.setSliderAdapter(adapter);

sliderView.setIndicatorAnimation(IndicatorAnimations.SLIDE); //set indicator animation by using SliderLayout.IndicatorAnimations. :WORM or THIN_WORM or COLOR or DROP or FILL or NONE or SCALE or SCALE_DOWN or SLIDE and SWAP!!
sliderView.setSliderTransformAnimation(SliderAnimations.CUBEINROTATIONTRANSFORMATION);
sliderView.setAutoCycleDirection(SliderView.AUTO_CYCLE_DIRECTION_BACK_AND_FORTH);
sliderView.setIndicatorSelectedColor(Color.WHITE);
sliderView.setIndicatorUnselectedColor(Color.GRAY);
sliderView.startAutoCycle();
我的日志:

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.coderedinnovations.allioservices, PID: 7955
java.lang.NullPointerException: Attempt to invoke virtual method 'void com.smarteist.autoimageslider.SliderView.setSliderAdapter(com.smarteist.autoimageslider.SliderViewAdapter)' on a null object reference
    at com.coderedinnovations.allioservices.AllioMain.HomeFragment.onCreateView(HomeFragment.java:53)
    at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2698)
    at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:320)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1187)
    at androidx.fragment.app.FragmentManager.addAddedFragments(FragmentManager.java:2224)
    at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1997)
    at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1953)
    at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1849)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2629)
    at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:2577)
    at androidx.fragment.app.Fragment.performActivityCreated(Fragment.java:2722)
    at androidx.fragment.app.FragmentStateManager.activityCreated(FragmentStateManager.java:346)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1188)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1356)
    at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1434)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1497)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2625)
    at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:2577)
    at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:247)
    at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:541)
    at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:201)
    at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1433)
    at android.app.Activity.performStart(Activity.java:7987)
    at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3521)
    at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:226)
    at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:206)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:178)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:102)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2222)
    at android.os.Handler.dispatchMessage(Handler.java:107)
    at android.os.Looper.loop(Looper.java:228)
    at android.app.ActivityThread.main(ActivityThread.java:7772)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:981)
布局代码:

<androidx.cardview.widget.CardView
    app:cardCornerRadius="10dp"
    android:layout_margin="14dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <com.smarteist.autoimageslider.SliderView
        android:id="@+id/imageSlider"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        app:sliderAnimationDuration="600"
        app:sliderAutoCycleDirection="back_and_forth"
        app:sliderAutoCycleEnabled="true"
        app:sliderIndicatorAnimationDuration="600"
        app:sliderIndicatorGravity="center_horizontal|bottom"
        app:sliderIndicatorMargin="15dp"
        app:sliderIndicatorOrientation="horizontal"
        app:sliderIndicatorPadding="3dp"
        app:sliderIndicatorRadius="0.5dp"
        app:sliderIndicatorSelectedColor="#5A5A5A"
        app:sliderIndicatorUnselectedColor="#FFF"
        app:sliderScrollTimeInSec="1"
        app:sliderStartAutoCycle="true" />

</androidx.cardview.widget.CardView>


我的适配器和它在我进行的其他活动中的工作没有问题

如果不查看logcat错误日志,就很难理解这里的问题是什么。然而,我认为我应该提出一些建议,这样你就可以自己调查这个问题了

您可以考虑从<代码>片段< />代码中初始化适配器。p>

SliderImageAdapter adapter = new SliderImageAdapter(getActivity());
view.findViewById(R.id.imageSlider);
另外,请检查您使用的布局是否具有
imagesslider
属性。如果在片段的布局中没有试图膨胀的布局id,那么它也应该有一个空指针异常

适配器看起来很好

更新

从logcat上看,您用于
片段的布局似乎没有
ImageSlider
,因此无法初始化
sliderView

从您发布的布局来看,布局id似乎是
imageSlider
,而不是
imageSlider
。布局ID区分大小写

因此,您应该对以下行进行如下修改

SliderImageAdapter adapter = new SliderImageAdapter(getActivity());
view.findViewById(R.id.imageSlider);

如果不查看logcat错误日志,就很难理解这里的问题是什么。然而,我认为我应该提出一些建议,这样你就可以自己调查这个问题了

您可以考虑从<代码>片段< />代码中初始化适配器。p>

SliderImageAdapter adapter = new SliderImageAdapter(getActivity());
view.findViewById(R.id.imageSlider);
另外,请检查您使用的布局是否具有
imagesslider
属性。如果在片段的布局中没有试图膨胀的布局id,那么它也应该有一个空指针异常

适配器看起来很好

更新

从logcat上看,您用于
片段的布局似乎没有
ImageSlider
,因此无法初始化
sliderView

从您发布的布局来看,布局id似乎是
imageSlider
,而不是
imageSlider
。布局ID区分大小写

因此,您应该对以下行进行如下修改

SliderImageAdapter adapter = new SliderImageAdapter(getActivity());
view.findViewById(R.id.imageSlider);

你能把日志寄出去吗?你应该在你的日志中看到坠机日志。我刚刚发布了我的日志,请看一看。希望你能帮上忙你能把日志贴出来吗?你应该在你的日志中看到坠机日志。我刚刚发布了我的日志,请看一看。希望您能帮助我尝试getActivity();和getContext();但是没有一个对我有效。我不能让你明白你的片段使用的布局是什么吗?我有同样的问题。即使我引用了正确的SliderView,我仍然收到一个Nullpointerexception…@CodeREDInnovations您找到问题的解决方案了吗?我尝试了getActivity();和getContext();但是没有一个对我有效。我不能让你明白你的片段使用的布局是什么吗?我有同样的问题。即使我引用了正确的SliderView…@CodeREDInnovations,我还是收到了一个Nullpointerexception。您找到问题的解决方案了吗?