- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到一个错误,ConstraintLayout 中存在空对象引用
Logcat
E/UncaughtException: java.lang.NullPointerException: Attempt to invokevirtual method 'voidandroidx.constraintlayout.widget.ConstraintLayout.setVisibility(int)'on a null object referenceat com.dreamKatcher.Core.Profile.ProfileFragment.onCreateView(ProfileFragment.java:136)at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2595)at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:881)at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1238)at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:434)at androidx.fragment.app.FragmentManagerImpl.executeOps(FragmentManagerImpl.java:2076)at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManagerImpl.java:1866)at androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManagerImpl.java:1821)at androidx.fragment.app.FragmentManagerImpl.execPendingActions(FragmentManagerImpl.java:1727)at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManagerImpl.java:2660)at androidx.fragment.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManagerImpl.java:2610)at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:246)at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:542)at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:178)at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1413)at android.app.Activity.performStart(Activity.java:7169)at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3146)at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180)at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165)at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142)at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1977)at android.os.Handler.dispatchMessage(Handler.java:106)at android.os.Looper.loop(Looper.java:193)at android.app.ActivityThread.main(ActivityThread.java:6923)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870)
public class ProfileFragment extends AbstractBaseFragment implements ProfileView {
@BindView(R.id.appBarMain)
AppBarLayout appBar;
@BindView(R.id.appBar)
ConstraintLayout app_bar;
@BindView(R.id.nameTextView)
TextView nameTextView;
@BindView(R.id.profileDescTextView)
AppCompatTextView profileDescTextView;
@BindView(R.id.detailsViewPager)
CustomViewPager detailsViewPager;
@BindView(R.id.detailsTabLayout)
TabLayout detailsTabLayout;
@BindView(R.id.nest)
NestedScrollView nest;
@BindView(R.id.profileImageView)
CircularImageView profileImageView;
@BindView(R.id.collapsingToolbar)
CollapsingToolbarLayout collapsingToolbar;
Unbinder unbinder;
@BindView(R.id.settings)
ImageView settings;
@BindView(R.id.backButton)
ImageView backButton;
@BindView(R.id.title)
TextView title;
@BindView(R.id.search)
ImageView search;
@BindView(R.id.leader_board)
ImageView leaderBoard;
@BindView(R.id.typeandnickname)
TextView typeandnickname;
@BindView(R.id.img_prize)
ImageView img_prize;
@BindView(R.id.img_games)
ImageView img_games;
ProfilePresenter profilePresenter;
public static String username;
private ProfileViewPagerAdapter viewPagerAdapter;
public ProfileFragment() {
}
public static ProfileFragment newInstance() {
return new ProfileFragment();
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(@NonNull LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_user_profile, container, false);
unbinder = ButterKnife.bind(this, view);
app_bar.setVisibility(View.GONE);
settings.setVisibility(View.VISIBLE);
settings.setOnClickListener(this);
img_games.setOnClickListener(this);
img_prize.setOnClickListener(this);
return view;
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
nest.setFillViewport(true);
}
private void setUpAppbarLayout() {
appBar.addOnOffsetChangedListener((appBarLayout, verticalOffset) -> {
if (Math.abs(verticalOffset) == appBarLayout.getTotalScrollRange()) {
} else {
}
});
}
}
之前一段时间它工作得很好,我没有改变这个类中的任何内容。如何解决这个问题?任何建议都会有帮助。
编辑 1现在问题改为TutorialActivity
public class TutorialActivity extends AppCompatActivity {
@BindView(R.id.tutorial_viewpager)
ViewPager tutorialViewpager;
@BindView(R.id.pageindicator)
PageIndicatorView pageindicator;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tutorial);
ButterKnife.bind(this);
TutorialAdapter tutorialAdapter = new TutorialAdapter(getSupportFragmentManager());
tutorialViewpager.setAdapter(tutorialAdapter);
tutorialViewpager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
}
}
Logcat
E/UncaughtException: java.lang.RuntimeException: Unable to startactivityComponentInfo{com.dreamKatcher/com.dreamKatcher.Core.Walkthrough.TutorialActivity}:java.lang.NullPointerException: Attempt to invoke virtual method 'voidandroidx.viewpager.widget.ViewPager.setAdapter(androidx.viewpager.widget.PagerAdapter)'on a null object referenceat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3122)at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3261)at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1977)at android.os.Handler.dispatchMessage(Handler.java:106)at android.os.Looper.loop(Looper.java:193)at android.app.ActivityThread.main(ActivityThread.java:6923)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870)Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'voidandroidx.viewpager.widget.ViewPager.setAdapter(androidx.viewpager.widget.PagerAdapter)'on a null object referenceat com.dreamKatcher.Core.Walkthrough.TutorialActivity.onCreate(TutorialActivity.java:34)at android.app.Activity.performCreate(Activity.java:7148)at android.app.Activity.performCreate(Activity.java:7139)at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1293)at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3102)
编辑 2 我现在可以通过删除 ButterKnife 并使用 findViewById
添加布局默认值来查看 TutoriaActivity我使用的是 ButterKnife 版本 10.1.0,当我升级到最新版本时,问题并未解决。
编辑3Activity_tutorial.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:attrs="http://schemas.android.com/tools"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Core.Walkthrough.TutorialActivity">
<androidx.viewpager.widget.ViewPager
android:id="@+id/tutorial_viewpager"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.rd.PageIndicatorView
android:id="@+id/pageindicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:piv_dynamicCount="true"
app:piv_interactiveAnimation="true"
app:piv_selectedColor="#33FFFFFF"
app:piv_unselectedColor="@color/white"
app:piv_viewPager="@id/tutorial_viewpager"
attrs:piv_padding="1.5dp"
attrs:piv_radius="4dp" />
</androidx.constraintlayout.widget.ConstraintLayout>
最佳答案
您是否通过将以下代码行从 onCreateView() 方法更改为 onActivityCreated() 进行检查
app_bar.setVisibility(View.GONE);
settings.setVisibility(View.VISIBLE);
settings.setOnClickListener(this);
img_games.setOnClickListener(this);
img_prize.setOnClickListener(this);
关于java - void androidx.constraintlayout.widget.ConstraintLayout.setVisibility(int) - 在空对象引用上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60447442/
我有一个代码,当我单击 jButton 时,它应该设置为不可见,而另一个已设置为 FALSE 的 JButton 应该为 TRUE,setVisible(true) 不起作用。 buttonGrid[
我看到了一些关于这个的帖子,我明白了这个问题。但是怎么绕过去呢?我有 ListView 和可以展开的项目,但是一旦 View 消失,它就不会再可见,除非它有可用空间。如何创造这个空间? private
JFrame 在循环中无法正确显示。代码:- import javax.swing.*; import java.awt.event.*; import java.awt.*; import j
下面的代码应该重置框架gameFrame: private void reset() { moveCount = 0; gameFrame.setVisible(false);
请看下图来理解问题: 如您所见,有一个 RelativeLayout 包含一个自定义 View 和一个 LinearLayout。 在它们之间,还有另一个 View,Visibility 被设置为 G
我有一个 JScrollPane包含 JPanel然后包含一些自定义组件,它们是 JPanel 的扩展(它们都是同一类型)。此 JScrollPane 在包含 JFrame 之前设置为不可见显示。 当
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我是 JFrame 的新手,我正在尝试做一个项目,如果按“注销”按钮,则可以完美执行以下代码, public void actionlogout() { lButton.addActionLi
我试图隐藏除 1 之外的所有 jList,它是从 jcomboBox (cbLists) 的索引中获得的,它并没有真正隐藏 jLists,就像禁用而不是隐藏一样,我需要它隐藏所有内容,就像完全不可见一
你能帮我吗?我正在尝试创建一个菜单,只需按一下按钮即可显示项目。我想我应该使菜单项visible:false,然后在MainActivity中切换这个属性。但我做不到正确的事。我需要 3 个新菜单项。
我想知道,这样做会更有效率吗: setVisible(false) // if the component is invisible 或者像这样: if(isVisible()){
简单介绍一下我在做什么。 我根据用户登录的帐户类型授予不同的功能。 用户的帐户类型将通过 Firebase 数据库中的 Firebase 引用检索。如果您查看此图像,就会看到箭头指示。这是显示帐户类型
我在处理程序中隐藏了一个按钮(这是在我使其在应用程序的另一种状态下可见之后)。处理程序从正在运行的线程接收消息,然后更新 GUI。 问题是附近的(不是全部)按钮和 TextView 也从屏幕上消失了。
我有一个带有 jcheckbox 和 jtextfield 的 jframe(它有更多组件)。 我将标签设置为 setVisible(false),当复选框被选中时,它应该使标签可见。它确实如此,但您
这是我的布局:
我是 android 开发的新手。我在 LinearLayout 中包含一个网格,组成网格的每个项目都是一个按钮。当用户按下这些按钮中的任何一个时,我希望此 LinearLayout 不可见。 这是我
我在抽屉中使用 NavigationView 并且 Menu 中有一个项目具有指向 的 app:actionLayout 属性>LinearLayout 包含一个 TextView,并且 TextVi
我有一个 LinearLayout,我希望能够通过单击“更多详细信息”链接来显示/隐藏它。我通过调用来做到这一点 moreDetailsSection.setVisibility(View.VISIB
在 JavaFX 中,如果我有一个包含 2 个 VBox 元素的场景,并且每个 VBox 中都有多个 Label。 如果我将顶部的VBox设置为invisible,为什么底部的VBox不上移顶部的场景
所以我一直在论坛中寻找如何做到这一点,但我发现没有任何效果。当我在图像按钮上调用 setVisibility() 时,该按钮不受影响。下面是 onCreate 方法中的代码,当我运行应用程序时,两个按
我是一名优秀的程序员,十分优秀!