-
近期文章
近期评论
- admin 发表在《将Subversion SVN装入windows系统服务》
- leon 发表在《php汉字转拼音的最佳方法》
- calvin 发表在《在Linux下安装JDK及环境设置》
- admin 发表在《一句sql引起的问题》
- admin 发表在《WordPress seo 优化-url rewrite重写优化》
文章归档
分类目录
功能
TabWidget去除底部下划线
采用TabHost布局时,往往会发现默认的系统风格与软件风格很不协调,比如TabWidget的下划线影响布局效果。通常情况下会去除其下划线。如果是采用xml布局文件,在TabWidget的属性项设置android:tabStripEnabled=”false”(经测试发现,这个属性是在2.2版本以上才能使用),这样能达到去除下划线的目的。 但是如果使用代码去除下划线,情况就比较复杂,就需要根据不同的版本去除下划线。如果是2.2,2.3版本,去除下划线只需要调用一个方法:tabWidget.setStripEnabled(false);就可以去除下划线。但是在2.1及以下版本,就无法去除下划线,因为2.1没有tabWidget.setStripEnabled(boolean b)这个方法。这个时候,可以分析android 2.1,2.2,2.3关于TabWidget的源码,采用反射修改私有的mBottomLeftStrip,mBottomRightStrip两个变量(2.2,2.3是mLeftStrip,mRightStrip两个变量),从而达到修改。 具体源码: view plaincopy to clipboardprint? package com.test.main; import java.lang.reflect.Field; import android.app.TabActivity; import android.content.Intent; import android.os.Build; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.widget.TabHost; import android.widget.TabWidget; import android.widget.TextView; import android.widget.TabHost.OnTabChangeListener; public class TabhostActivity extends TabActivity { /** Called when the activity is first created. */ … Continue reading
Posted in Android
Leave a comment
Android ListItem改变颜色
ListItem更改背景色,可能不是很好,但能达到效果,点击、长按、方向键选中都会保留背景色: 1、listView控件 java代码: <ListView android:id="@+id/contact_listview" android:layout_width="wrap_content" android:layout_height="400dip" android:divider="#b9b9b9" android:dividerHeight="1px" android:cacheColorHint="#00000000" android:listSelector="@drawable/list_selector" android:headerDividersEnabled="true"> </ListView> 复制代码 2、在drawable文件夹中见一个list_selector.xml文件,不用写什么内容,只是用来把系统自带的给覆盖掉。 java代码: <?xml version="1.0" encoding="UTF-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> </selector> 复制代码 3、在values文件夹中新建一个colors.xml文件,用来写颜色值: java代码: <?xml version="1.0" encoding="utf-8"?> <resources> <color … Continue reading
Posted in Android
Leave a comment
监听ListView滚动到最底部【转】
监听ListView的滚动可以用两个东西: ListView.onScrollStateChanged (本文讲解这个listener的使用) 在OnGestureListener类里面的 onScroll(MotionEvent e1,MotionEvent e2, float distanceX,float distanceY) 事件 SDK的Sample里面的ApiDemos里面的List9 和 List 13介绍了 ListView.OnScrollListener的使用。 List9介绍的是ListView.OnScrollListener的 onScroll(AbsListView view,int firstVisibleItem,int visibleItemCount,int totalItemCount) 方法。 List13介绍的是ListView.OnScrollListener的 onScrollStateChanged(AbsListView view,int scrollState) 方法,使用说明如下: ListView.setOnScrollListener(new OnScrollListener(){ @Override public void onScrollStateChanged(AbsListView view,int scrollState){ switch (scrollState){ case OnScrollListener.SCROLL_STATE_IDLE: Log.v("已经停止:SCROLL_STATE_IDLE"); … Continue reading
Posted in Android
Leave a comment
ICDSoft主机,完美解决discuz x2的图片上传I/O错误问题
.htaccess加入: SetEnvIfNoCase Content-Type \ "^multipart/form-data;" "MODSEC_NOPOSTBUFFERING=Do not buffer file uploads" 参考了:http://www.chibl.com/archives/527
Posted in apache
Leave a comment
centos 5.7 安装中文支持
默认安装下centos 5.7不支持中文。解决方法: 1.yum install fonts-chinese 2. 设置 loacle 为中文环境 1) # vim /etc/sysconfig/i18n LANG="zh_CN.UTF-8" 注销重启登录就可以了。
Posted in Linux
Leave a comment
如何编写快速高效的多表查询SQL语句?
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): Oracle的解析器按照从右到左的顺序处理FROM子句中的表 名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表. (2) WHERE子句中的连接顺序.: ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾. (3) SELECT子句中避免使用 ‘ * ‘: ORACLE在解析的过程中, 会将'*' 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间 (4) 减少访问数据库的次数: ORACLE在内部执行了许多工作: 解析SQL语句, 估算索引的利用率, 绑定变量 , 读数据块等; (5) 在SQL*Plus , SQL*Forms和Pro*C中重新设置ARRAYSIZE参数, 可以增加每次数据库访问的检索数据量 ,建议值为200 (6) 使用DECODE函数来减少处理时间: 使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表. … Continue reading
Posted in mysql
Leave a comment
linux mysql自动备份脚本
#!/bin/sh # mysql_backup.sh: backup mysql databases and keep newest 5 days backup. # # Last updated: 20 March 2006 # ———————————————————————- # This is a free shell script under GNU GPL version 2.0 or … Continue reading
Posted in mysql
Leave a comment
HTML5 app,动态删除元素
I have an HTML5 app where I want to delete canvas from a section element: <section id="thumbnails"> <h1>My Bookmarks:</h1> <canvas height="60px" width="100px" data-time="2.1167500019073486"></canvas> <canvas height="60px" width="100px" data-time="3.60492205619812"></canvas> <canvas height="60px" width="100px" data-time="4.558893203735352"></canvas> … Continue reading
SQLite的日期时间函数
转自http://it.enorth.com.cn/system/2008/06/17/003409310.shtml 这篇文章是根据SQLite官方WIKI里的内容翻译,SQLite 包括以下五个时间函数: 1.date(日期时间字符串,修正符,修正符, ……) 2.time(日期时间字符串,修正符,修正符, ……) 3.datetime(日期时间字符串,修正符,修正符, ……) 4.julianday(日期时间字符串,修正符,修正符, ……) 5.strftime(日期时间格式,日期时间字符串,修正符,修正符, ……) 上述五个函数需要一个日期时间字符串做参数,后面可以跟零到多个修正符参数。而strftime()函数还需要一个日期时间格式字符串做第一个参数。 1.date()函数返回一个以“YYYY-MM-DD”为格式的日期; 2.time()函数返回一个以“YYYY-MM-DD HH:MM:SS”为格式的日期时间; 3.julianday()函数返回一个天数,从格林威治时间公元前4714年11月24号开始算起; 4.strftime()函数返回一个经过格式话的日期时间,它可以用下面的符号对日期和时间进行格式化: %d 一月中的第几天01-31 %f 小数形式的秒,SS.SSSS %H 小时00-24 %j 一年中的第几天01-366 %J Julian Day Numbers %m 月份01-12 %M 分钟00-59 %s 从1970-01-01日开始计算的秒数 %S 秒00-59 %w … Continue reading