Horizontalscroll自定义编辑横向滑动的位置,

来源:互联网 发布:网络诈骗案件2017 编辑:程序博客网 时间:2024/05/18 02:26
public class MainActivity extends AppCompatActivity {    private HorizontalScrollView horizontalScrollView;    private LinearLayout linearLayout;    private int sign_count;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);        setSupportActionBar(toolbar);        View views = (View) findViewById(R.id.include);        horizontalScrollView=(HorizontalScrollView)views.findViewById(R.id.main_hscrollView);        linearLayout = (LinearLayout) views.findViewById(R.id.main_lly);        loadView();        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);        fab.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)                        .setAction("Action", null).show();            }        });    }    private void loadView() {        //编辑视图        for (int i = 0; i < 10; i++) {            View view = LayoutInflater.from(this).inflate(R.layout.item_layout, null);            ImageView imageView = (ImageView) view.findViewById(R.id.item_image);            TextView textView = (TextView) view.findViewById(R.id.item_text);            if (i % 2 == 0) {                imageView.setImageResource(R.mipmap.ease_chat_image_pressed);                textView.setText("深色");            } else {                imageView.setImageResource(R.mipmap.ease_chat_image_normal);                textView.setText("浅色");            }            if (linearLayout != null) {                linearLayout.addView(view);            }        }        sign_count=3;//选定偏移的位置        Handler handler = new Handler();        handler.postDelayed((new Runnable() {            @Override            public void run() {                int dimensionPixelOffset = getApplicationContext().getResources().getDimensionPixelOffset(R.dimen.d_70dp);                horizontalScrollView.scrollTo(dimensionPixelOffset * (sign_count - 1), 0);//设置horizontalscroll偏移多少                Log.i("MainActivity","scrollTo--");            }        }), 5);    }}

在xml文件中:
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    app:layout_behavior="@string/appbar_scrolling_view_behavior"    tools:context="com.mecll.nereo.horizontalscrollviewdemo.MainActivity"    tools:showIn="@layout/activity_main">    <HorizontalScrollView        android:id="@+id/main_hscrollView"        android:layout_width="match_parent"        android:layout_height="wrap_content">        <LinearLayout            android:id="@+id/main_lly"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:orientation="horizontal">        </LinearLayout>    </HorizontalScrollView></RelativeLayout><strong></strong>

在Linearlayout的item中的xml文件:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:padding="20dp"    android:orientation="vertical">    <ImageView        android:id="@+id/item_image"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_gravity="center"        android:src="@mipmap/ease_chat_image_normal" />    <TextView        android:id="@+id/item_text"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginTop="10dp"        android:layout_gravity="center"        android:text="Hello World!" /></LinearLayout>

附上源代码:
点击打开链接
0 0
原创粉丝点击