fork download
  1. import android.os.Bundle;
  2. import android.support.v4.app.Fragment;
  3. import android.support.v4.view.ViewPager;
  4. import android.support.v7.app.AppCompatActivity;
  5. import android.util.DisplayMetrics;
  6. import android.view.LayoutInflater;
  7. import android.widget.HorizontalScrollView;
  8. import android.widget.LinearLayout;
  9. import android.widget.RadioButton;
  10. import android.widget.RadioGroup;
  11.  
  12. import java.util.ArrayList;
  13. import java.util.List;
  14.  
  15. import tw.com.rockex6.IntentTest.R;
  16.  
  17. /**
  18.  * Created by user on 2018/3/30.
  19.  */
  20.  
  21. public class FragmentTest extends AppCompatActivity implements ViewPager.OnPageChangeListener {
  22. private LinearLayout ContentLayout;
  23. private HorizontalScrollView TopLayout;
  24. private RadioGroup mRadioGroup;
  25. private ViewPager mViewPager;
  26. private String[] topString = {"1"};
  27. private List<Fragment> mFragmentList = new ArrayList<>();
  28. private PageFragmentAdapter mPageFragmentAdapter;
  29.  
  30. @Override
  31. public void onCreate(Bundle b) {
  32. super.onCreate(b);
  33. setContentView(R.layout.fragment_test);
  34. init();
  35. initTab();
  36. initViewPager();
  37. }
  38.  
  39. private void init() {
  40. TopLayout = findViewById(R.id.top);
  41. ContentLayout = findViewById(R.id.content);
  42. mRadioGroup = findViewById(R.id.top_text);
  43. mViewPager = findViewById(R.id.view_pager);
  44. mViewPager.addOnPageChangeListener(this);
  45. }
  46.  
  47. private void initTab() {
  48. for (int i = 0; i < topString.length; i++) {
  49. RadioButton radioButton = (RadioButton) LayoutInflater.from(this).inflate(R.layout.tab, null);
  50. radioButton.setText(String.valueOf(i + 1));
  51. radioButton.setTextSize(20);
  52. RadioGroup.LayoutParams params = new RadioGroup.LayoutParams(
  53. RadioGroup.LayoutParams.WRAP_CONTENT, RadioGroup.LayoutParams.WRAP_CONTENT
  54. );
  55. mRadioGroup.addView(radioButton, params);
  56. }
  57. setTab(0);
  58. }
  59.  
  60. private void setTab(int position) {
  61. RadioButton radioButton = (RadioButton) mRadioGroup.getChildAt(position);
  62. radioButton.setChecked(true);
  63. for (int i = 0; i < mRadioGroup.getChildCount(); i++) {
  64. mRadioGroup.getChildAt(i).setSelected(false);
  65. }
  66. radioButton.setSelected(true);
  67. int left = radioButton.getLeft();
  68. int width = radioButton.getMeasuredWidth();
  69. DisplayMetrics metrics = new DisplayMetrics();
  70. getWindowManager().getDefaultDisplay().getMetrics(metrics);
  71. int screenWidth = metrics.widthPixels;
  72. int len = left + width / 2 - screenWidth / 2;
  73. TopLayout.smoothScrollTo(len, 0);
  74. }
  75.  
  76. private void initViewPager() {
  77. if (mPageFragmentAdapter == null) {
  78. for (String title : topString) {
  79. FragmentTest1 baseFragment = new FragmentTest1();
  80. Bundle bundle = new Bundle();
  81. bundle.putString("title", title);
  82. baseFragment.setArguments(bundle);
  83. mFragmentList.add(baseFragment);
  84. }
  85. mPageFragmentAdapter = new PageFragmentAdapter(getSupportFragmentManager(), mFragmentList);
  86. }
  87. mViewPager.setAdapter(mPageFragmentAdapter);
  88. mPageFragmentAdapter.notifyDataSetChanged();
  89. }
  90.  
  91.  
  92. @Override
  93. public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
  94.  
  95. }
  96.  
  97. @Override
  98. public void onPageSelected(int position) {
  99. setTab(position);
  100. }
  101.  
  102. @Override
  103. public void onPageScrollStateChanged(int state) {
  104.  
  105. }
  106. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:21: error: class FragmentTest is public, should be declared in a file named FragmentTest.java
public class FragmentTest extends AppCompatActivity implements ViewPager.OnPageChangeListener {
       ^
Main.java:1: error: package android.os does not exist
import android.os.Bundle;
                 ^
Main.java:2: error: package android.support.v4.app does not exist
import android.support.v4.app.Fragment;
                             ^
Main.java:3: error: package android.support.v4.view does not exist
import android.support.v4.view.ViewPager;
                              ^
Main.java:4: error: package android.support.v7.app does not exist
import android.support.v7.app.AppCompatActivity;
                             ^
Main.java:5: error: package android.util does not exist
import android.util.DisplayMetrics;
                   ^
Main.java:6: error: package android.view does not exist
import android.view.LayoutInflater;
                   ^
Main.java:7: error: package android.widget does not exist
import android.widget.HorizontalScrollView;
                     ^
Main.java:8: error: package android.widget does not exist
import android.widget.LinearLayout;
                     ^
Main.java:9: error: package android.widget does not exist
import android.widget.RadioButton;
                     ^
Main.java:10: error: package android.widget does not exist
import android.widget.RadioGroup;
                     ^
Main.java:15: error: package tw.com.rockex6.IntentTest does not exist
import tw.com.rockex6.IntentTest.R;
                                ^
Main.java:21: error: cannot find symbol
public class FragmentTest extends AppCompatActivity implements ViewPager.OnPageChangeListener {
                                  ^
  symbol: class AppCompatActivity
Main.java:21: error: package ViewPager does not exist
public class FragmentTest extends AppCompatActivity implements ViewPager.OnPageChangeListener {
                                                                        ^
Main.java:22: error: cannot find symbol
    private LinearLayout ContentLayout;
            ^
  symbol:   class LinearLayout
  location: class FragmentTest
Main.java:23: error: cannot find symbol
    private HorizontalScrollView TopLayout;
            ^
  symbol:   class HorizontalScrollView
  location: class FragmentTest
Main.java:24: error: cannot find symbol
    private RadioGroup mRadioGroup;
            ^
  symbol:   class RadioGroup
  location: class FragmentTest
Main.java:25: error: cannot find symbol
    private ViewPager mViewPager;
            ^
  symbol:   class ViewPager
  location: class FragmentTest
Main.java:27: error: cannot find symbol
    private List<Fragment> mFragmentList = new ArrayList<>();
                 ^
  symbol:   class Fragment
  location: class FragmentTest
Main.java:28: error: cannot find symbol
    private PageFragmentAdapter mPageFragmentAdapter;
            ^
  symbol:   class PageFragmentAdapter
  location: class FragmentTest
Main.java:31: error: cannot find symbol
    public void onCreate(Bundle b) {
                         ^
  symbol:   class Bundle
  location: class FragmentTest
Main.java:30: error: method does not override or implement a method from a supertype
    @Override
    ^
Main.java:32: error: cannot find symbol
        super.onCreate(b);
        ^
  symbol:   variable super
  location: class FragmentTest
Main.java:33: error: package R does not exist
        setContentView(R.layout.fragment_test);
                        ^
Main.java:40: error: package R does not exist
        TopLayout = findViewById(R.id.top);
                                  ^
Main.java:41: error: package R does not exist
        ContentLayout = findViewById(R.id.content);
                                      ^
Main.java:42: error: package R does not exist
        mRadioGroup = findViewById(R.id.top_text);
                                    ^
Main.java:43: error: package R does not exist
        mViewPager = findViewById(R.id.view_pager);
                                   ^
Main.java:49: error: cannot find symbol
            RadioButton radioButton = (RadioButton) LayoutInflater.from(this).inflate(R.layout.tab, null);
            ^
  symbol:   class RadioButton
  location: class FragmentTest
Main.java:49: error: cannot find symbol
            RadioButton radioButton = (RadioButton) LayoutInflater.from(this).inflate(R.layout.tab, null);
                                       ^
  symbol:   class RadioButton
  location: class FragmentTest
Main.java:49: error: package R does not exist
            RadioButton radioButton = (RadioButton) LayoutInflater.from(this).inflate(R.layout.tab, null);
                                                                                       ^
Main.java:49: error: cannot find symbol
            RadioButton radioButton = (RadioButton) LayoutInflater.from(this).inflate(R.layout.tab, null);
                                                    ^
  symbol:   variable LayoutInflater
  location: class FragmentTest
Main.java:52: error: package RadioGroup does not exist
            RadioGroup.LayoutParams params = new RadioGroup.LayoutParams(
                      ^
Main.java:52: error: package RadioGroup does not exist
            RadioGroup.LayoutParams params = new RadioGroup.LayoutParams(
                                                           ^
Main.java:53: error: package RadioGroup does not exist
                    RadioGroup.LayoutParams.WRAP_CONTENT, RadioGroup.LayoutParams.WRAP_CONTENT
                              ^
Main.java:53: error: package RadioGroup does not exist
                    RadioGroup.LayoutParams.WRAP_CONTENT, RadioGroup.LayoutParams.WRAP_CONTENT
                                                                    ^
Main.java:61: error: cannot find symbol
        RadioButton radioButton = (RadioButton) mRadioGroup.getChildAt(position);
        ^
  symbol:   class RadioButton
  location: class FragmentTest
Main.java:61: error: cannot find symbol
        RadioButton radioButton = (RadioButton) mRadioGroup.getChildAt(position);
                                   ^
  symbol:   class RadioButton
  location: class FragmentTest
Main.java:69: error: cannot find symbol
        DisplayMetrics metrics = new DisplayMetrics();
        ^
  symbol:   class DisplayMetrics
  location: class FragmentTest
Main.java:69: error: cannot find symbol
        DisplayMetrics metrics = new DisplayMetrics();
                                     ^
  symbol:   class DisplayMetrics
  location: class FragmentTest
Main.java:70: error: cannot find symbol
        getWindowManager().getDefaultDisplay().getMetrics(metrics);
        ^
  symbol:   method getWindowManager()
  location: class FragmentTest
Main.java:79: error: cannot find symbol
                FragmentTest1 baseFragment = new FragmentTest1();
                ^
  symbol:   class FragmentTest1
  location: class FragmentTest
Main.java:79: error: cannot find symbol
                FragmentTest1 baseFragment = new FragmentTest1();
                                                 ^
  symbol:   class FragmentTest1
  location: class FragmentTest
Main.java:80: error: cannot find symbol
                Bundle bundle = new Bundle();
                ^
  symbol:   class Bundle
  location: class FragmentTest
Main.java:80: error: cannot find symbol
                Bundle bundle = new Bundle();
                                    ^
  symbol:   class Bundle
  location: class FragmentTest
Main.java:85: error: cannot find symbol
            mPageFragmentAdapter = new PageFragmentAdapter(getSupportFragmentManager(), mFragmentList);
                                       ^
  symbol:   class PageFragmentAdapter
  location: class FragmentTest
Main.java:85: error: cannot find symbol
            mPageFragmentAdapter = new PageFragmentAdapter(getSupportFragmentManager(), mFragmentList);
                                                           ^
  symbol:   method getSupportFragmentManager()
  location: class FragmentTest
Main.java:92: error: method does not override or implement a method from a supertype
    @Override
    ^
Main.java:97: error: method does not override or implement a method from a supertype
    @Override
    ^
Main.java:102: error: method does not override or implement a method from a supertype
    @Override
    ^
50 errors
stdout
Standard output is empty