求解?Android自定义下拉,为什么只能获取到第一个控件的焦点了

来源:互联网 发布:购物车程序java 编辑:程序博客网 时间:2024/04/29 22:48

我定义了一个下拉效果。但是只点击了他下面第一个控件才有效:



我点击或者触摸“这里是彩期显示区域”才会下拉出历史记录。我现在想要点击下面的红球、篮球选球区域也有效,怎么修改????

java代码:

package com.example.testxiala;import android.app.Activity;import android.os.Bundle;import android.widget.TextView;public class MainActivity extends Activity {private Scrllon_view scrllon_view;private TextView lisi_textview;private TextView main_textview;private TextView main_textview2;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);scrllon_view = (Scrllon_view) findViewById(R.id.main_relative_scrllon_view); lisi_textview = (TextView) findViewById(R.id.lisi_textiview); main_textview = (TextView) findViewById(R.id.main_textiview1); main_textview2 = (TextView) findViewById(R.id.main_textiview2); scrllon_view.setMaxHeight(100);} }

xml布局代码:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:background="#f6f6f6"    android:orientation="vertical" >    <RelativeLayout        android:layout_width="fill_parent"        android:layout_height="52dip"        android:layout_gravity="center"        android:background="#d80702" >        <TextView            android:layout_width="wrap_content"            android:layout_height="fill_parent"            android:gravity="center"            android:paddingLeft="15dip"            android:text="双色球-普通"            android:textColor="#ffffff"            android:textSize="18sp" />    </RelativeLayout>    <RelativeLayout        android:layout_width="fill_parent"        android:layout_height="0dip"        android:layout_weight="1"        android:background="#f6f6f6"        android:orientation="vertical" >        <TextView            android:id="@+id/lisi_textiview"            android:layout_width="fill_parent"            android:layout_height="80dip"            android:background="#517688"            android:gravity="center"            android:text="历史记录"            android:visibility="visible" />        <com.example.testxiala.Scrllon_view            android:id="@+id/main_relative_scrllon_view"            android:layout_width="match_parent"            android:layout_height="fill_parent" >            <LinearLayout                android:layout_width="fill_parent"                android:layout_height="fill_parent"                android:background="#7d7d7d"                android:focusable="true"                android:orientation="vertical" >                <TextView                    android:id="@+id/main_textiview"                    android:layout_width="fill_parent"                    android:layout_height="40dip"                    android:background="#aabbcc"                    android:gravity="center"                    android:text="这里是彩期显示区域"                    android:textColor="#222222"                    android:visibility="visible" />                <TextView                    android:id="@+id/main_textiview1"                    android:layout_width="fill_parent"                    android:layout_height="200dip"                    android:background="#cbacba"                    android:gravity="center"                    android:text="这里是选球界面,红球"                    android:textColor="#d80702"                    android:visibility="visible" />                <TextView                    android:id="@+id/main_textiview2"                    android:layout_width="fill_parent"                    android:layout_height="fill_parent"                    android:background="#abcabc"                    android:gravity="center"                    android:text="这里是选球界面,篮球"                    android:textColor="#d80702"                    android:visibility="visible" />            </LinearLayout>        </com.example.testxiala.Scrllon_view>    </RelativeLayout>    <!-- 金额,确认选号 -->    <View        android:layout_width="fill_parent"        android:layout_height="1px"        android:background="#dedede" />    <RelativeLayout        android:layout_width="fill_parent"        android:layout_height="52dip"        android:background="#f8f8f8"        android:orientation="horizontal" >        <TextView            android:id="@+id/ssq_main_txt_mainConfirm"            android:layout_width="80dp"            android:layout_height="36dp"            android:layout_alignParentRight="true"            android:layout_centerVertical="true"            android:layout_marginRight="10dp"            android:gravity="center"            android:text="投注"            android:textColor="#222222"            android:textSize="16sp"            android:textStyle="bold"            android:typeface="monospace" />    </RelativeLayout></LinearLayout>


还有我自定义的Scrllon_view

package com.example.testxiala;import android.content.Context;import android.util.AttributeSet;import android.view.MotionEvent;import android.widget.LinearLayout;import android.widget.Scroller;/** * LinearLayout换成RelativeLayout效果也是一样 */public class Scrllon_view extends LinearLayout {Scroller croller;private int moveY = 0;public boolean mEnabled = true;public int maxHeight = 0;public int getMaxHeight() {return maxHeight;}public void setMaxHeight(int maxHeight) {this.maxHeight = maxHeight;}public Scrllon_view(Context context) {super(context);}public Scrllon_view(Context context, AttributeSet set) {super(context, set);setDescendantFocusability(FOCUS_AFTER_DESCENDANTS);setFocusable(true);croller = new Scroller(context);}@Overridepublic boolean onTouchEvent(MotionEvent event) {switch (event.getAction()) {case MotionEvent.ACTION_DOWN:return true;case MotionEvent.ACTION_MOVE:moveY = (int) event.getY();int Y = moveY;if (Y < maxHeight && moveY > 0) {scrollTo(0, -moveY);}break;case MotionEvent.ACTION_UP:int YY = (int) event.getY();if (YY < 100) {scrollTo(0, 0);} else if (YY > 250 && YY < maxHeight) {scrollTo(0, -(maxHeight));}break;default:break;}return super.onTouchEvent(event);}public void startMoveAnim(int startY, int dy, int duration) {croller.startScroll(100, startY, 100, dy, duration);}@Overridepublic boolean onInterceptTouchEvent(MotionEvent ev) {if (mEnabled)return false;return super.onInterceptTouchEvent(ev);}}


代码全部在上面,求解???


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 房间里进了壁虎怎么办 家中进了只老鼠怎么办 医保卡迟迟不发怎么办 医保断了一个月怎么办 没办离职的社保怎么办 家里吊顶上有老鼠怎么办 房间里进老鼠了怎么办 衣服上有老鼠屎怎么办 如果被老鼠咬了怎么办 儿童被老鼠咬了怎么办 蟑螂爬到衣柜里怎么办 床垫里有老鼠屎怎么办 汽车里进了老鼠怎么办 狗狗感染蜱虫怎么办 脸上有螨虫怎么办才能去除 老鼠被剪丁丁后怎么办 1楼下水道钻老鼠怎么办 月经来了奶水少了怎么办 孕37周霉菌严重怎么办 家里进了飞蚂蚁怎么办 家里进了大蜘蛛怎么办 衣服上有蟑螂卵怎么办 被子上有蟑螂卵怎么办 厨房里的小飞虫怎么办 水果生的小飞虫怎么办 家里的厕所有虫怎么办 人吃了蟑螂药怎么办 静电贴粘不住了怎么办 会飞的蚂蚁咬了怎么办 家里有白蚁怎么办能除根 华为畅享5s黑屏怎么办 家里有个蚂蚁窝怎么办 宿舍有老鼠爬床怎么办 楼上的狗叫扰民怎么办 楼下的狗一直叫怎么办 焊机通电没反应怎么办 输了3万块钱怎么办 行吊遥控器掉了怎么办 狗狗耳朵尖结痂怎么办 蚊帐里进了蚊子怎么办 孕妇用了点蚊香怎么办