登录
首页 » Java » Scroll

Scroll

于 2012-07-25 发布 文件大小:42KB
0 214
下载积分: 1 下载次数: 8

代码说明:

  这个源码是一个简单的andorid跑马灯滚动效果,可以运行(This source is a simple andorid Marquee scrolling effect, you can run)

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 菜单的联动之简单的开发文档
    实现左菜单联动,通过这个实现一些简单的逻辑,可以随时往里面添加新的子菜单,实现了菜单联动,对于初学者来讲是个不错的东西
    2022-08-18 11:54:09下载
    积分:1
  • DengLu
    可用于软件开发的登陆页面,此页面精简漂亮,里面的代码精简易懂,有很好的兼容性( Can be used in the software development of the landing page, the page streamlined pretty, the inside of the code concise and easy to understand, and have very good compatibility)
    2013-07-27 12:04:59下载
    积分:1
  • Android-music-player-source
    安卓音乐播放器源码,附带详细word文档说明。(Android music player source, with a detailed documentation.)
    2013-08-05 20:50:01下载
    积分:1
  • AccountSetupIncoming
    Account Setup Incoming for Andriod.
    2013-10-06 00:35:28下载
    积分:1
  • android 仿微信浏览相册图片例子源码下载
    [实例简介] 仿微信浏览相册图片, 相册浏览 [实例截图] [核心代码]import java.io.File;import java.io.FilenameFilter;import java.util.ArrayList;import java.util.Arrays;import java.util.HashSet;import java.util.List;import android.app.Activity;import android.app.ProgressDialog;import android.content.ContentResolver;import android.database.Cursor;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.os.Handler;import android.provider.MediaStore;import android.util.DisplayMetrics;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup.LayoutParams;import android.view.WindowManager;import android.widget.GridView;import android.widget.PopupWindow.OnDismissListener;import android.widget.RelativeLayout;import android.widget.TextView;import android.widget.Toast;import com.zhy.bean.ImageFloder;import com.zhy.imageloader.ListImageDirPopupWindow.OnImageDirSelected;public class MainActivity extends Activity implements OnImageDirSelected{ private ProgressDialog mProgressDialog; /** * 存储文件夹中的图片数量 */ private int mPicsSize; /** * 图片数量最多的文件夹 */ private File mImgDir; /** * 所有的图片 */ private List mImgs; private GridView mGirdView; private MyAdapter mAdapter; /** * 临时的辅助类,用于防止同一个文件夹的多次扫描 */ private HashSet mDirPaths = new HashSet(); /** * 扫描拿到所有的图片文件夹 */ private List mImageFloders = new ArrayList(); private RelativeLayout mBottomLy; private TextView mChooseDir; private TextView mImageCount; int totalCount = 0; private int mScreenHeight; private ListImageDirPopupWindow mListImageDirPopupWindow; private Handler mHandler = new Handler() { public void handleMessage(android.os.Message msg) { mProgressDialog.dismiss(); // 为View绑定数据 data2View(); // 初始化展示文件夹的popupWindw initListDirPopupWindw(); } }; /** * 为View绑定数据 */ private void data2View() { if (mImgDir == null) { Toast.makeText(getApplicationContext(), "擦,一张图片没扫描到", Toast.LENGTH_SHORT).show(); return; } mImgs = Arrays.asList(mImgDir.list()); /** * 可以看到文件夹的路径和图片的路径分开保存,极大的减少了内存的消耗; */ mAdapter = new MyAdapter(getApplicationContext(), mImgs, R.layout.grid_item, mImgDir.getAbsolutePath()); mGirdView.setAdapter(mAdapter); mImageCount.setText(totalCount "张"); }; /** * 初始化展示文件夹的popupWindw */ private void initListDirPopupWindw() { mListImageDirPopupWindow = new ListImageDirPopupWindow( LayoutParams.MATCH_PARENT, (int) (mScreenHeight * 0.7), mImageFloders, LayoutInflater.from(getApplicationContext()) .inflate(R.layout.list_dir, null)); mListImageDirPopupWindow.setOnDismissListener(new OnDismissListener() { @Override public void onDismiss() { // 设置背景颜色变暗 WindowManager.LayoutParams lp = getWindow().getAttributes(); lp.alpha = 1.0f; getWindow().setAttributes(lp); } }); // 设置选择文件夹的回调 mListImageDirPopupWindow.setOnImageDirSelected(this); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); DisplayMetrics outMetrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(outMetrics); mScreenHeight = outMetrics.heightPixels; initView(); getImages(); initEvent(); } /** * 利用ContentProvider扫描手机中的图片,此方法在运行在子线程中 完成图片的扫描,最终获得jpg最多的那个文件夹 */ private void getImages() { if (!Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)) { Toast.makeText(this, "暂无外部存储", Toast.LENGTH_SHORT).show(); return; } // 显示进度条 mProgressDialog = ProgressDialog.show(this, null, "正在加载..."); new Thread(new Runnable() { @Override public void run() { String firstImage = null; Uri mImageUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; ContentResolver mContentResolver = MainActivity.this .getContentResolver(); // 只查询jpeg和png的图片 Cursor mCursor = mContentResolver.query(mImageUri, null, MediaStore.Images.Media.MIME_TYPE "=? or " MediaStore.Images.Media.MIME_TYPE "=?", new String[] { "image/jpeg", "image/png" }, MediaStore.Images.Media.DATE_MODIFIED); Log.e("TAG", mCursor.getCount() ""); while (mCursor.moveToNext()) { // 获取图片的路径 String path = mCursor.getString(mCursor .getColumnIndex(MediaStore.Images.Media.DATA)); Log.e("TAG", path); // 拿到第一张图片的路径 if (firstImage == null) firstImage = path; // 获取该图片的父路径名 File parentFile = new File(path).getParentFile(); if (parentFile == null) continue; String dirPath = parentFile.getAbsolutePath(); ImageFloder imageFloder = null; // 利用一个HashSet防止多次扫描同一个文件夹(不加这个判断,图片多起来还是相当恐怖的~~) if (mDirPaths.contains(dirPath)) { continue; } else { mDirPaths.add(dirPath); // 初始化imageFloder imageFloder = new ImageFloder(); imageFloder.setDir(dirPath); imageFloder.setFirstImagePath(path); } int picSize = parentFile.list(new FilenameFilter() { @Override public boolean accept(File dir, String filename) { if (filename.endsWith(".jpg") || filename.endsWith(".png") || filename.endsWith(".jpeg")) return true; return false; } }).length; totalCount = picSize; imageFloder.setCount(picSize); mImageFloders.add(imageFloder); if (picSize > mPicsSize) { mPicsSize = picSize; mImgDir = parentFile; } } mCursor.close(); // 扫描完成,辅助的HashSet也就可以释放内存了 mDirPaths = null; // 通知Handler扫描图片完成 mHandler.sendEmptyMessage(0x110); } }).start(); } /** * 初始化View */ private void initView() { mGirdView = (GridView) findViewById(R.id.id_gridView); mChooseDir = (TextView) findViewById(R.id.id_choose_dir); mImageCount = (TextView) findViewById(R.id.id_total_count); mBottomLy = (RelativeLayout) findViewById(R.id.id_bottom_ly); } private void initEvent() { /** * 为底部的布局设置点击事件,弹出popupWindow */ mBottomLy.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { mListImageDirPopupWindow .setAnimationStyle(R.style.anim_popup_dir); mListImageDirPopupWindow.showAsDropDown(mBottomLy, 0, 0); // 设置背景颜色变暗 WindowManager.LayoutParams lp = getWindow().getAttributes(); lp.alpha = .3f; getWindow().setAttributes(lp); } }); } @Override public void selected(ImageFloder floder) { mImgDir = new File(floder.getDir()); mImgs = Arrays.asList(mImgDir.list(new FilenameFilter() { @Override public boolean accept(File dir, String filename) { if (filename.endsWith(".jpg") || filename.endsWith(".png") || filename.endsWith(".jpeg")) return true; return false; } })); /** * 可以看到文件夹的路径和图片的路径分开保存,极大的减少了内存的消耗; */ mAdapter = new MyAdapter(getApplicationContext(), mImgs, R.layout.grid_item, mImgDir.getAbsolutePath()); mGirdView.setAdapter(mAdapter); // mAdapter.notifyDataSetChanged(); mImageCount.setText(floder.getCount() "张"); mChooseDir.setText(floder.getName()); mListImageDirPopupWindow.dismiss(); }}
    2015-04-08下载
    积分:1
  • RoboCup机器人仿真救援(RoboCup Rescue) Agent部分源码
            RoboCup机器人世界杯竞赛于2001年增加了机器人救援的专项比赛RoboCupRescue,为救援理论和技术提供研究的试验平台。RoboCup是一个为了促进人工智能、机器人技术等领域发展的国际合作计划,同时也是一个国际性的研究机构和教育性的组织,它的目的在于通过在一个宽广的能够进行分析和综合的领域规定一个权威的问题,鼓励和推动人工智能和机器人技术的发展。RoboCup由许多不同的技术组成:自治机器人的设计原理、多智能体的协作、策略的获取、实时的推理和机器人技术等。RoboCup技术一个重要的应用就是在大的灾难场地进行机器人的搜索和救援。         RoboCupRescue机器人救援仿真是是一个通过模拟现实生活中的城市灾难场景,用机器人进行救援的仿真系统,它是和应用领域结合十分密切的新兴工程,其主要目的是使救援智能体进行有效的分工协作,完成营救市民和灭火的任务,以最大限度地减小灾难带来的损失,进而在灾难救援这个重大的社会问题上促进研究和发展。
    2022-10-26 13:00:04下载
    积分:1
  • 人才招聘网站源代码 附加视频介绍
    资源描述package com.dao; import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.hibernate.LockMode; import org.springframework.context.ApplicationContext; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.model.TToudijianli; /**  * Data access object (DAO) for domain model class TToudijianli.  *   * @see com.model.TToudijianli  * @author MyEclipse Persistence Tools  */ public class TToudijianliDAO extends HibernateDaoSupport { private static final Log log = LogFactory.getLog(TToudijianliDAO.class); // property constants public static final String STU_ID = "stuId"; public static final String ZHAOPIN_ID = "zhaopinId";
    2022-08-08 19:20:19下载
    积分:1
  • 基于Java开发的许愿墙模块
    资源描述本程序为基于Java开发的许愿墙模块,运用eclipse开发平台,sqlserver2008数据库,附完整代码下载即可使用,亲测可用~
    2022-01-23 10:25:35下载
    积分:1
  • fmj.jar fmj.jar
    fmj.jarfmj.jarfmj.jarfmj.jarfmj.jarfmj.jarfmj.jarfmj.jar
    2022-06-17 01:37:28下载
    积分:1
  • Gobang网络五子棋
    本程序是基于java的网络版五子棋,能够实现不同主机的网络的连接,最多可同时允许50个人在线。允许建立连接,建立游戏,加入游戏,以及用户之间的对话交流,就像一个小型聊天空间一样,在游戏的同时,对话好友。
    2023-04-25 20:00:04下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载