首页 > 解决方案 > 如何在 AIDE 中实现 ViewPager 或 Viewpager 2

问题描述

我在 Android 上使用 AIDE 进行编码。目前它声称支持我也在编码的 Android 10。我想在我的应用程序顶部有一个选项卡,其中条目的数量大于屏幕的数量,因此我可以用拇指滚动条目并单击以显示与我单击的选项卡相对应的不同数据输入字段对于我的应用程序。

所以,我尝试了以下方法:

主要的.xml

<!--  ViewPager2 element with a TabLayout -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <com.google.android.material.tabs.TabLayout
        android:id="@+id/tab_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <androidx.viewpager2.widget.ViewPager2
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" />

</LinearLayout>

MainActivity.java

package com.mycompany.vp;

import android.app.*;
import android.os.*;

public class MainActivity extends Activity 
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

CollectionDemoFragment.java

package com.mycompany.vp;

// Integrating TabLayout with ViewPager2
public class CollectionDemoFragment : Fragment() {
    ...
    @Override
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        TabLayout tabLayout = view.findViewById(R.id.tab_layout);
        new TabLayoutMediator(tabLayout, viewPager,
                (tab, position) -> tab.setText("OBJECT " + (position + 1))
        ).attach();
    }
    ...
}

但是,在我的片段代码中,我得到了意外的声明结束错误。我不确定我是否需要 ViewPager 或 ViewPager2 的片段才能工作,我也不清楚我需要什么代码,尤其是我在 AIDE 中需要什么代码,因为它可能不支持每个 Android Studio 构造并且我没有 PC .

如果我删除 CollectionDemoFragment.java 我可以编译我的代码,但是当我尝试运行它时它会崩溃。关于如何使选项卡工作以及从 AIDE 编译应用程序并运行而不会崩溃的任何想法?

谢谢。

标签: androidandroid-fragmentsandroid-viewpageraide

解决方案


推荐阅读