【问题标题】:TextView in PagerAdapter: scrollable in API15-17, not in API7PagerAdapter 中的 TextView:在 API15-17 中可滚动,在 API7 中不可滚动
【发布时间】:2013-04-09 20:13:06
【问题描述】:

这个 FragmentActivity 创建了几个片段,这些片段被放入一个滑块中(水平的。这里只显示一个片段):

public class MainActivity2 extends FragmentActivity{

    private ViewPager mPager;
    private FragmentStatePagerAdapter mPagerAdapter;
    private Logger mLogger;


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

        mLogger = new Logger();
        mPager = (ViewPager)findViewById(R.id.pager);
        mPagerAdapter = new SliderAdapter(getSupportFragmentManager());
        mPager.setAdapter(mPagerAdapter);

    ... //goes on with activity, the adapter is set correctly..

Logger 片段创建它的视图来膨胀这个 xml:

    <TextView
        android:id="@+id/LoggerLoTitle"
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:ems="10"
        android:layout_weight="2"
        android:gravity="center"
        android:textStyle="bold"
        android:textColor="#000033"
        android:textSize="16sp"
        android:text="@string/logger"
        android:layout_marginTop="30sp" />      
    <TextView
        android:id="@+id/numberOutput"
        android:textIsSelectable="true"
        android:layout_width="0dp"
        android:layout_weight="13"
        android:layout_height="fill_parent"
        android:gravity="top"
        android:freezesText="true"
        android:maxLines = "50"
        android:layout_marginLeft="22dp"
        android:scrollbars = "vertical"
        android:layout_marginTop="45sp"/>
    <Button
        android:background="#80FFFFFF"
        android:gravity="center"
        android:layout_width="0dp"
        android:layout_weight="2"
        android:layout_height="fill_parent"
        android:freezesText="true"
        android:scrollbars = "vertical"
        android:layout_marginTop="45sp"
        android:textColor="#000000"
        android:textStyle="bold"
        android:text="@string/logger_ad"
        android:onClick="whatsNew"/>  
</LinearLayout>

对于 API 7,除了 TextView“numberOutput”不滚动且无法选择之外,一切正常(所有片段都已加载,滑块正常)。对于 API 15、16、17,它运行良好。有什么想法吗?

【问题讨论】:

    标签: android-view textview android-scroll android


    【解决方案1】:

    通过在运行时获取那个 TextView (numberOutput) 并设置一个移动方法来解决它:

    rootView = (ViewGroup) inflater.inflate(R.layout.dicelogger_lo, container, false);
    mLoggerBody = (TextView)rootView.findViewById(R.id.numberOutput); 
    mLoggerBody.setMovementMethod(new ScrollingMovementMethod());
    

    我在文档中没有发现更高的 api 级别会自动设置任何移动方法.. 所以为什么会是另一个问题

    【讨论】:

      猜你喜欢
      • 2018-11-26
      • 2013-05-25
      • 1970-01-01
      • 2012-02-02
      • 2011-04-22
      • 2014-07-15
      • 1970-01-01
      • 2014-01-17
      • 1970-01-01
      相关资源
      最近更新 更多