导航:首页 > 操作系统 > android滚动

android滚动

发布时间:2022-01-25 04:09:56

A. android 如何禁止scrollview 滚动

android scrollview组件禁止滑动的方法;
xml配置:
android:id="@+id/sc_freement"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/category_line"
android:scrollbars="none"
android:fadingEdge="none">
</<span style="line-height: 21px; ">ScrollView>
java代码控制:
ScrollView scrollView = (ScrollView)this.findViewById(R.id.sc_freement);
scrollView.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
return true;
}
});

B. android中怎样设置滚动条

mThumbDrawable 这个文件没有,根本为崩溃; 并不是方法不好用,是你没有抄全; 在实际应用中,该代码会出现异常,通过对几个sdk源码的对比,发现Google会对其中的属性做一些微调: 如在5.x中,“mFastScroller”改为了“mFastScroll”,4.4中则把“mThumbDrawable”改为“thumbDrawable”并设为了final,在5.x中又恢复成了private. 所以在实际应用中还需加以判断。下面是针对4.4修改后的代码: 由于class FastScroller没有public属性,无法直接导包获取到,所以从用到该类的AbsListView中获取。 try { Field f = AbsListView.class.getDeclaredField("mFastScroller"); //获取AbsListView中的属性mFastScroller f.setAccessible(true);//设置属性可修改 Object o = f.get(listview);//得到listview实例 // Field[] fields = f.getType().getDeclaredFields(); // for (Field field : fields) { // Log.v("TAG", field.getName()); // } //查看所有属性名 f = f.getType().getDeclaredField("mThumbImage");//获取属性mThumbImage(由于 4.4中的thumbDrawable不可修改,所以直接取其imageview) f.setAccessible(true); ImageView img = (ImageView) f.get(o); //得到ImageView实例 img.setImageDrawable(getResources().getDrawable(R.drawable.icon)); f.set(o, img); //把编辑好的ImageView放进去 } catch (Exception e) { throw new RuntimeException(e); }

C. android怎么让scrollview 不能滚动

只要将ScrollView的onTouchListener的onTouch方法返回true就行了
scrollView.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
return true;
}
});

D. android 滚屏浏览怎么实现

首先1

获得ScrollView sc = (ScrollView) findViewById(R.id.scroll);//scroll对象
LinearLayout mlayout = (LinearLayout) findViewById(R.id.mlayout);//scrollView中包含的布局对象
2,定义一个Handler

private final Handler mHandler = new Handler();

private Runnable ScrollRunnable= new Runnable() { @Override public void run() { int off = mlayout.getMeasuredHeight() - sc.getHeight();//判断高度 if (off > 0) { sc.scrollBy(0, 30); if (sc.getScrollY() == off) { Thread.currentThread().interrupt(); } else { mHandler.postDelayed(this, 1000); } } } };这就是核心代码,当然还有一部分代码,一般搜出来的网页上是没有的。那就是怎么具体用他,还需要设置一个监听器,就是addOnLayoutChangeListener。在这个监听器里面调用 mHandler.post(ScrollRunnable),就可以了。

样板布局如下:

<ScrollView 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" android:id="@+id/nameScroll" > <LinearLayout android:layout_width="match_parent" android:layout_height="100dp" android:orientation="vertical"

E. android textview 怎么实现文字滚动

android:focusable="true" 加上这句 TextView只有是焦点组件时,才会滚动。 如果你不想是焦点也能滚动的话,那应该是个走马灯控件了,我也研究下看看走马灯得如何实现。

F. 怎样实现android页面滚动

除了嵌套滚动属性的控件外,比如ListView,WebView,EditText等外,想要让某个页面滚动,需要在布局中添加ScrollView控件
一个ScrollView控件只允许声明一个子控件
通常在一个ScrollView控件中嵌套LinearLayout
如果当前布局没有嵌套ScrollView,建议更改一下布局,实现滚动效果

G. 》android 编程中如何实现页面滚动...是用ScrollView吗 具体怎么实现...

1L正解。就是在你现在的xml里面所有的控件外面包裹一层ScrollView,这样ScrollView里面的所有显示的内容都是可以滚动查看的。

H. android 下拉滚动页面怎么实现

以下是我自己花功夫编写了一种非常简单的下拉刷新实现方案,现在拿出来和大家分享一下。相信在阅读完本篇文章之后,大家都可以在自己的项目中一分钟引入下拉刷新功能 最近项目中需要用到ListView下拉刷新的功能,一开始想图省事,在网上直接找一个现成的,可是尝试了网上多个版本的下拉刷新之后发现效果都不 怎么理想。有些是因为功能不完整或有Bug,有些是因为使用起来太复杂,十全十美的还真没找到。因此我也是放弃了在网上找现成代码的想法,自己花功夫编写 了一种非常简单的下拉刷新实现方案,现在拿出来和大家分享一下。相信在阅读完本篇文章之后,大家都可以在自己的项目中一分钟引入下拉刷新功能。 首先讲一下实现原理。这里我们将采取的方案是使用组合View的方式,先自定义一个布局继承自LinearLayout,然后在这个布局中加入下拉 头和ListView这两个子元素,并让这两个子元素纵向排列。初始化的时候,让下拉头向上偏移出屏幕,这样我们看到的就只有ListView了。然后对 ListView的touch事件进行监听,如果当前ListView已经滚动到顶部并且手指还在向下拉的话,那就将下拉头显示出来,松手后进行刷新操 作,并将下拉头隐藏。原理示意图如下: 那我们现在就来动手实现一下,新建一个项目起名叫PullToRefreshTest,先在项目中定义一个下拉头的布局文件pull_to_refresh/apk/res/android" xmlns:tools="schemas/tools" android:id="@+id/pull_to_refresh_head" android:layout_width="fill_parent" android:layout_height="60dip" > <LinearLayout android:layout_width="200dip" android:layout_height="60dip" android:layout_centerInParent="true" android:orientation="horizontal" > <RelativeLayout android:layout_width="0dip" android:layout_height="60dip" android:layout_weight="3" > <ImageView android:id="@+id/arrow" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:src="@drawable/arrow" /> <ProgressBar android:id="@+id/progress_bar" android:layout_width="30dip" android:layout_height="30dip" android:layout_centerInParent="true" android:visibility="gone" /> </RelativeLayout> <LinearLayout android:layout_width="0dip" android:layout_height="60dip" android:layout_weight="12" android:orientation="vertical" > <TextView android:id="@+id/description" android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="1" android:gravity="center_horizontalbottom" android:text="@string/pull_to_refresh" /> <TextView android:id="@+id/updated_at" android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="1" android:gravity="center_horizontaltop" android:text="@string/updated_at" /> </LinearLayout> </LinearLayout> </RelativeLayout> 在这个布局中,我们包含了一个下拉指示箭头,一个下拉状态文字提示,和一个上次更新的时间。当然,还有一个隐藏的旋转进度条,只有正在刷新的时候我们才会将它显示出来。 布局中所有引用的字符串我们都放在stringsmit(); new HideHeaderTask()/apk/res/android" xmlns:tools="schemas/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > <com.example.pulltorefreshtest.RefreshableView android:id="@+id/refreshable_view" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ListView android:id="@+id/list_view" android:layout_width="fill_parent" android:layout_height="fill_parent" > </ListView> </com.example.pulltorefreshtest.RefreshableView> </RelativeLayout> 可以看到,我们在自定义的RefreshableView中加入了一个ListView,这就意味着给这个ListView加入了下拉刷新的功能,就是这么简单! 然后我们再来看一下程序的主Activity,打开或新建MainActivity,加入如下代码: 复制代码 代码如下: public class MainActivity extends Activity { RefreshableView refreshableView; ListView listView; ArrayAdapter<String> adapter; String[] items = { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L" }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); refreshableView = (RefreshableView) findViewById(R.id.refreshable_view); listView = (ListView) findViewById(R.id.list_view); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, items); listView.setAdapter(adapter); refreshableView.setOnRefreshListener(new PullToRefreshListener() { @Override public void onRefresh() { try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } refreshableView.finishRefreshing(); } }, 0); } } 可 以看到,我们通过调用RefreshableView的setOnRefreshListener方法注册了一个监听器,当ListView正在刷新时就 会回调监听器的onRefresh方法,刷新的具体逻辑就在这里处理。而且这个方法已经自动开启了线程,可以直接在onRefresh方法中进行耗时操 作,比如向服务器请求最新数据等,在这里我就简单让线程睡眠3秒钟。另外在onRefresh方法的最后,一定要调用RefreshableView中的 finishRefreshing方法,这个方法是用来通知RefreshableView刷新结束了,不然我们的ListView将一直处于正在刷新的 状态。 不知道大家有没有注意到,setOnRefreshListener这个方法其实是有两个参数的,我们刚刚也是传入了一个不起眼的 0。那这第二个参数是用来做什么的呢?由于RefreshableView比较智能,它会自动帮我们记录上次刷新完成的时间,然后下拉的时候会在下拉头中 显示距上次刷新已过了多久。这是一个非常好用的功能,让我们不用再自己手动去记录和计算时间了,但是却存在一个问题。如果当前我们的项目中有三个地方都使 用到了下拉刷新的功能,现在在一处进行了刷新,其它两处的时间也都会跟着改变!因为刷新完成的时间是记录在配置文件中的,由于在一处刷新更改了配置文件, 导致在其它两处读取到的配置文件时间已经是更改过的了。那解决方案是什么?就是每个用到下拉刷新的地方,给setOnRefreshListener方法 的第二个参数中传入不同的id就行了。这样各处的上次刷新完成时间都是单独记录的,相互之间就不会再有影响。 好了,全部的代码都在这里了,让我们来运行一下,看看效果吧。 效果看起来还是非常不错的。我们最后再来总结一下,在项目中引入ListView下拉刷新功能只需三步: 1. 在Activity的布局文件中加入自定义的RefreshableView,并让ListView包含在其中。 2. 在Activity中调用RefreshableView的setOnRefreshListener方法注册回调接口。 3. 在onRefresh方法的最后,记得调用RefreshableView的finishRefreshing方法,通知刷新结束。 从此以后,在项目的任何地方,一分钟引入下拉刷新功能妥妥的。 好了,今天的讲解到此结束,有疑问的朋友请在下面留言。 源码下载,请点击这里

I. 怎么在android中出现滚动界面

使用ScrollView即可。

例如:

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:scrollbars="vertical"

android:fadingEdge="vertical"

>

android:orientation="vertical" android:layout_width="fill_parent"

android:layout_height="wrap_content" android:padding="10dip"

android:scrollbars="vertical"

>

注意的是:ScrollView也是一个layout布局,可以让它的内容数据显示不下的时候出现滚动条。但是不能在ScrollView中放置多个组件,Scrollview只能包裹一个子元素。可以在Scrollview中放置一个LinearLayout或其他layout来放置更多组件(Layout可以嵌套的)。

J. android scrollview的水平滚动条问题,哪位高手给指教下啊,谢谢了!!

如果你把内容包含在ScrollView中,当内容超出高度时会自动出现滚动条。

另外,使用控件HorizontalScrollView 来包住你的内容时,
如果你的内容假设是一个LinearLayout, 那么当LinearLayout的宽度超过屏幕时, 将会自动产生滚动条,当你拖动鼠标时,效果跟scrollView一样,不过是横向而己

例:
纵向滚动
<ScrollView>
<LinearLayout ........>
<TextView ...../>
<TextView ...../>
<TextView ...../>
<TextView ...../>
</LineraLayout>
</ScrollView>

模向滚动
<HorizontalScrollView >
<LinearLayout ........>
<TextView ...../>
<TextView ...../>
<TextView ...../>
<TextView ...../>
</LineraLayout>
</HorizontalScrollView >

有时候甚至可以做到横向纵向都支持,只需要你合理设计就可以, 注意ScrollView中只能加一个控制,不能超过两个

阅读全文

与android滚动相关的资料

热点内容
最近为什么手机连不上索尼服务器 浏览:873
海康录像机怎么关视频加密 浏览:786
编程以后有可能被机器人代替吗 浏览:522
windows创建文件命令 浏览:986
linuxcopy文件内容 浏览:383
程序员帅哥秃顶 浏览:839
阿里云服务器开通流程 浏览:105
如何开云服务器 浏览:979
网站小说源码 浏览:301
php用什么ide 浏览:867
网上预约课程app哪个好 浏览:152
android兼容测试工具 浏览:96
云服务器不支持虚拟化怎么办 浏览:189
加密方式的演变 浏览:364
java常用算法pdf 浏览:734
服务器数据遇到异常什么原因 浏览:450
phpexif信息 浏览:543
单片机三字节浮点数 浏览:756
命令与征服泰伯利亚战争下载 浏览:378
c窗口界面编程 浏览:25