【问题标题】:how to show an alphabetical scrollview on the right side of a ListView如何在 ListView 的右侧显示按字母顺序排列的滚动视图
【发布时间】:2014-01-28 07:19:50
【问题描述】:

我正在尝试创建一个按字母顺序显示的滚动视图,以显示在列表视图的右侧以启用快速滚动。我已按照此问题的指示完成 How to create an alphabetical scrollbar displaying all the letter in android?

我已按照上述步骤操作,但单击字母时没有任何反应,请协助。这是我的代码

java

  public void quickScroll(View v) {
    String firstLetter = (String) v.getTag();
   int index = 0;

   List<String> s=Arrays.asList("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O",
           "P","Q","R","S","T","U","V","W","X","Y","Z");
    if (s != null) {
        for (String string : s) {
            if (string.startsWith(firstLetter)) {
                index = s.indexOf(string);

                break;
            }
        }
    }
    lv.setSelectionFromTop(index, 0);
    //lv is my listview
}

以及下面的xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >

<ListView
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:layout_above="@+id/button1"
   android:id="@+id/lv"/>
<LinearLayout android:orientation="vertical"
    android:layout_width="wrap_content" android:layout_height="wrap_content"
    android:layout_alignParentRight="true"  android:background="@android:color/transparent" >

    <TextView
        android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/A" android:text="A" android:tag="A" 
       android:clickable="true"  android:onClick="quickScroll"

       />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/B" android:text="B" android:tag="B"
          android:clickable="true"  android:onClick="quickScroll"
        />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/C" android:text="C" android:tag="C"
          android:clickable="true"  android:onClick="quickScroll"
     />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/D" android:text="D" android:tag="D"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/E" android:text="E" android:tag="E"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/F" android:text="F" android:tag="F"
          android:clickable="true"  android:onClick="quickScroll"
        />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/G" android:text="G" android:tag="G"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/H" android:text="H" android:tag="H"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/I" android:text="I" android:tag="I"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/J" android:text="J" android:tag="J"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/K" android:text="K" android:tag="K"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/L" android:text="L" android:tag="L"
          android:clickable="true"  android:onClick="quickScroll"
        />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent" 
        android:id="@+id/M" android:text="M" android:tag="M"
         android:clickable="true"  android:onClick="quickScroll"
        />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/N" android:text="N" android:tag="N"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/O" android:text="O" android:tag="O"
          android:clickable="true"  android:onClick="quickScroll"
      />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/P" android:text="P" android:tag="P"
          android:clickable="true"  android:onClick="quickScroll"
        />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/Q" android:text="Q" android:tag="Q"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/R" android:text="R" android:tag="R"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/S" android:text="S" android:tag="S"
          android:clickable="true"  android:onClick="quickScroll"
    />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/T" android:text="T" android:tag="T"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/U" android:text="U" android:tag="U"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/V" android:text="V" android:tag="V"
          android:clickable="true"  android:onClick="quickScroll"
        />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/W" android:text="W" android:tag="W"
          android:clickable="true"  android:onClick="quickScroll"
        />
    <TextView
          android:layout_width="match_parent" android:layout_height="match_parent"
         android:id="@+id/X" android:text="X" android:tag="X"
          android:clickable="true"  android:onClick="quickScroll"
        />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/Y" android:text="Y" android:tag="Y"
          android:clickable="true"  android:onClick="quickScroll"
       />
    <TextView 
          android:layout_width="match_parent" android:layout_height="match_parent"
        android:id="@+id/Z" android:text="Z" android:tag="Z"
          android:clickable="true"  android:onClick="quickScroll"
        />

</LinearLayout>
 <Button
     android:id="@+id/button1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:layout_centerHorizontal="true"
     android:text="Done" />

</RelativeLayout>

【问题讨论】:

    标签: android listview view scroll


    【解决方案1】:

    @bloodyshadow 我只是要求你在 TextViews 上应用OnClickListener,首先你应用它会起作用

    您在 xml 中使用 onClick attribute 无法正常工作

    【讨论】:

    【解决方案2】:

    您可以通过在 java 类中应用“OnCLickListener”来解决此问题 xml onClick 在这里不起作用

    【讨论】:

    • 不要发布单行答案。也添加一些代码。
    • TextView text=findViewById(R.id.textid) text.SetOnClickLintener( new OnClickListener(){ OnClick(View v){ } });
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-16
    • 2016-08-25
    • 1970-01-01
    • 2015-05-04
    • 1970-01-01
    相关资源
    最近更新 更多