gpt4 book ai didi

android - 我的 ViewPager 是空的

转载 作者:行者123 更新时间:2023-11-29 15:46:15 24 4
gpt4 key购买 nike

我在我的 Android 应用程序中使用 ViewPager 创建了一个关于 Activity 。但是我看不到任何内容

我的 AboutActivity.java:

import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v13.app.FragmentStatePagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

import com.loloof64.android.chess_positions_archiver.R;

/**
* The about activity
*/
public class AboutActivity extends Activity {

static final int NUM_ITEMS = 2;

AboutDialogFragmentPagerAdapter pagerAdapter;
ViewPager viewPager;

static String pagesContents [] = new String[NUM_ITEMS];

public void exit(View view){
finish();
}

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.about_dialog_layout);

pagesContents[0] = getString(R.string.this_app_manual);
pagesContents[1] = getString(R.string.about_resources_content);

pagerAdapter = new AboutDialogFragmentPagerAdapter(getFragmentManager(),
new String[]{
"Chess Positions Archiver",
getString(R.string.about_resources_title)
});
viewPager = (ViewPager) findViewById(R.id.about_dialog_pager);
viewPager.setAdapter(pagerAdapter);
viewPager.setCurrentItem(0);
}

public static class AboutDialogFragmentPagerAdapter extends FragmentStatePagerAdapter {

private String [] titles;

public AboutDialogFragmentPagerAdapter(FragmentManager fragmentManager, String [] titles){
super(fragmentManager);
this.titles = titles;
}

@Override
public Fragment getItem(int position) {
return AboutDialogSingleFragment.newInstance(position);
}

@Override
public int getCount() {
return NUM_ITEMS;
}

@Override
public CharSequence getPageTitle(int position) {
return titles[position];
}
}

public static class AboutDialogSingleFragment extends Fragment {

static String PAGE_TEXT_KEY = "PageTextKey";
private String pageText;

static AboutDialogSingleFragment newInstance(int position){
AboutDialogSingleFragment fragment = new AboutDialogSingleFragment();
Bundle arguments = new Bundle();
arguments.putString(PAGE_TEXT_KEY, pagesContents[position]);
fragment.setArguments(arguments);
return fragment;
}

@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.about_dialog_single_page_layout, container, false);
TextView pageTextView = (TextView) view.findViewById(R.id.about_dialog_page_textview);
pageTextView.setText(pageText);
container.addView(view);
return view;
}

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
pageText = getArguments() != null ? getArguments().getString(PAGE_TEXT_KEY) : getResources().getString(R.string.about_dialog_content_error);
}
}
}

我的 about_dialog_layout.xml :

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/about_dialog_tabs"
android:layout_width="match_parent"
android:layout_height="match_parent">

<android.support.v4.view.ViewPager
android:id="@+id/about_dialog_pager"
android:layout_width="match_parent"
android:layout_height="0px"
android:layout_weight="1">
</android.support.v4.view.ViewPager>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="@string/quit_about"
android:onClick="exit" />

</RelativeLayout>

我的 about_dialog_single_page_layout.xml :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/about_dialog_page_textview"/>

</LinearLayout>

我正在使用支持库 13。

那么,我的编程错误是什么?

最佳答案

android:layout_weight="1" 仅适用于 LinearLayout(它是 LinearLayout 的属性)。由于 ViewPager 的父级是 RelativeLayout 属性被忽略,并且您的 ViewPagerheight 为 0,这解释为什么你什么都看不到

关于android - 我的 ViewPager 是空的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32909088/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com