使用第三方jar包SlidingMenu,实现侧滑并给侧滑列表设置点击事件

本文介绍如何将第三方侧滑菜单库集成到Android应用中,并通过Java代码实现基本的侧滑功能。主要内容包括导入jar包、设置触摸模式、调整菜单样式及交互逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先第一步把slidingMenu的jar包导入到相应的项目当中,然后同步项目,同步项目之后即可使用第三方jar包实现侧滑的功能

java代码:

[html]  view plain  copy
  1. package com.myapplication;  
  2.   
  3. import android.content.Intent;  
  4. import android.support.v7.app.AppCompatActivity;  
  5. import android.os.Bundle;  
  6. import android.view.View;  
  7. import android.view.ViewGroup;  
  8. import android.widget.AdapterView;  
  9. import android.widget.ArrayAdapter;  
  10. import android.widget.BaseAdapter;  
  11. import android.widget.ListView;  
  12. import android.widget.Toast;  
  13.   
  14.   
  15. import com.slidingmenu.lib.SlidingMenu;  
  16.   
  17. public class MainActivity extends AppCompatActivity {  
  18.     private SlidingMenu menu;  
  19.     private ListView lv;  
  20.     String[] strs=new String[] {"1","2","3","4","5"};  
  21.     @Override  
  22.     protected void onCreate(Bundle savedInstanceState) {  
  23.         super.onCreate(savedInstanceState);  
  24.         setContentView(R.layout.activity_main);  
  25.   
  26.          menu = new SlidingMenu(getApplicationContext());  
  27.         inSlidingMenu();  
  28.   
  29.     }  
  30.   
  31.     private void inSlidingMenu() {  
  32.         menu.setMode(SlidingMenu.LEFT);  
  33.         // 设置触摸屏幕的模式  
  34.         menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);  
  35.         menu.setShadowWidthRes(R.dimen.shadow_width);  
  36.   
  37.         menu.setShadowDrawable(R.color.colorAccent);  
  38.   
  39.         // 设置滑动菜单视图的宽度  
  40.         menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);  
  41.         // 设置渐入渐出效果的值  
  42.         menu.setFadeDegree(0.35f);  
  43.   
  44.         menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);  
  45.         //为侧滑菜单设置布局  
  46.         menu.setMenu(R.layout.slidingmenu);  
  47.   
  48.   
  49.         lv= (ListView) findViewById(R.id.lv);  
  50.         lv.setAdapter(new ArrayAdapter<String>(this,  
  51.                 android.R.layout.simple_list_item_1,strs));  
  52.   
  53.         lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {  
  54.             @Override  
  55.             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {  
  56.                 Toast.makeText(MainActivity.this,"点击第"+(position+1)+"个item成功",Toast.LENGTH_SHORT).show();  
  57.                 startActivity(new Intent(MainActivity.this,ImageActivity.class));  
  58.             }  
  59.         });  
  60.     }  
  61.   
  62. }  

xml布局:

[html]  view plain  copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     xmlns:app="http://schemas.android.com/apk/res-auto"  
  4.     xmlns:tools="http://schemas.android.com/tools"  
  5.     android:layout_width="match_parent"  
  6.     android:layout_height="match_parent"  
  7.     android:orientation="vertical"  
  8.     tools:context="com.myapplication.MainActivity">  
  9. <TextView  
  10.     android:layout_width="wrap_content"  
  11.     android:layout_height="wrap_content"  
  12.     android:text="hello"/>  
  13.       
  14. </LinearLayout>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值