现在的位置: 首页 > 综合 > 正文

【ScrollView】ScrollView用法

2017年12月05日 ⁄ 综合 ⁄ 共 3841字 ⁄ 字号 评论关闭

今天试着使用了一下Android的滚轮,以下是一个小小的测试,读取测试文件,主要是使用scrollTo函数和getScrollY(),程序点击BUTTON按钮,则向下滚到2222处并显示。

main.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/widget38"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/widget32"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_x="0px"
        android:layout_y="0px">
    </LinearLayout>
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/sv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_x="0px"
        android:layout_y="20px">
        <TextView
            android:id="@+id/txtView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="hello,user!"
            android:textSize="20sp" />
    </ScrollView>
    <Button
        android:id="@+id/test"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button"
        android:layout_x="230px"
        android:layout_y="2px" />
</AbsoluteLayout>

main.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
package zy.Scroller;
 
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.http.util.EncodingUtils;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ScrollView;
import android.widget.TextView;
import android.widget.Toast;
 
public class main extends Activity
{
    /**
Called when the activity is first created. */
    final public String
DEV_FILE = 
"/data/data/zy.Scroller/aaa.txt";//
测试文件
    final String
TEXT_ENCODING = 
"UTF-8";
    ScrollView
sv;
    TextView
tv;
    public Button
test;
 
    @Override
    public void onCreate(Bundle
savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        sv
= (ScrollView) findViewById(R.id.sv);
        tv
= (TextView) findViewById(R.id.txtView);
        String
str;
        str
= getinfo(DEV_FILE);
        String[]
x;
        x
= str.split(
"/r");
        tv.setText(x[0]);
        int i;
        for (i
1;
i <= x.length - 
1;
i++) {
            tv.append(x[i]);
        }
 
        test
= (Button) findViewById(R.id.test);
        test.setOnClickListener(new Button.OnClickListener()
{
            @Override
            public void onClick(View
v) {
                //
TODO Auto-generated method stub
                sv.scrollTo(02222);
                DisplayToast(sv.getScrollY()
"");
 
            }
 
        });
 
    }
 
    protected void onScrollChanged(int l, int t, int oldl, int oldt)
{
        DisplayToast("123");
    }
 
    public String
getinfo(String path) {
        File
file;
        String
str = 
"";
        FileInputStream
in;
        try {
            //
打开文件file的InputStream
            file
new File(path);
            in
new FileInputStream(file);
            //
将文件内容全部读入到byte数组
            int length
= (
int)
file.length();
            byte[]
temp = 
new byte[length];
            in.read(temp, 0,
length);
            //
将byte数组用UTF-8编码并存入display字符串中
            str
= EncodingUtils.getString(temp, TEXT_ENCODING);
            //
关闭文件file的InputStream
 
            in.close();
        catch (IOException
e) {
 
            DisplayToast(e.toString());
 
        }
        return str;
    }
 
    public void DisplayToast(String
str) {
        Toast.makeText(this,
str, Toast.LENGTH_SHORT).show();
    }
}

抱歉!评论已关闭.