如何获取ImageView中的图片:
ImageView imageView= (ImageView)findViewById(R.id.imageView);
imageView.setDrawingCacheEnabled(true);
Bitmap bitmap = imageView.getDrawingCache(); imageView.setDrawingCacheEnabled(false);
在LinearLayout的菜单栏选项中添加按下背景,当Button使用
step1.编写按下效果selector
step2.LinearLayout中添加属性:android:clickable=”true”
如何解决在大范围EditText中光标不显示在左上角问题
在EditText中添加属性: gravity = “top|left”
如何自定义文本框的下划线
新建一个xml文件如下:
然后设置文本框background为当前xml文件
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:left="-2dp"
android:right="-2dp"
android:top="-2dp">
<shape>
<solid android:color="#00FFFFFF" />
<stroke
android:width="1px"
android:color="@666666" />
</shape>
</item>
</layer-list>
如何根据当前给出日期,算出n天后日期
/** 将当前String日期加n天后显示*/
public String getNextNday(String day1,int n){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date();
try {
date = sdf.parse(day1);
} catch (ParseException e) {
e.printStackTrace();
}
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, n);
String day2 = sdf.format(calendar.getTime());
return day2;
}
ScrollView内部只能嵌套一个容器,如:
<ScrollView>
<LinearLayout>
//any view is ok here
</LinearLayout>
</ScrollView>
ListView的遍历
//此遍历仅适用于遍历当前屏幕中已显示的child
for(int i=0;i<listView.getChildCount;i++){
ItemLayout layout = (ItemLayout)listView.getChildAt(i);
View1 v1 = (View1)layout.findViewById(R.id.item_view1);
View2 v2 = (View2)layout.findViewById(R.id.item_view2);
Object data1 = v1.getText().toString();
Object data2 = v2.getText().toString();
}
//遍历所有child需用到以下方法:
int listCount = mListView.getCount();
for (int i = 0; i < listCount; i++) {
RelativeLayout childLayout = (RelativeLayout) mListView.getAdapter().getView(i, null, null);
TextView tvNumber = (TextView) childLayout.findViewById(R.id.tv_bind_user_number);
EditText etName = (EditText) childLayout.findViewById(R.id.et_bind_user_name);
String number = tvNumber.getText().toString();
String name = etName.getText().toString().trim();
}
Map的遍历
//方法1
Map map = new HashMap();
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
Object key = entry.getKey();
Object val = entry.getValue();
}
//方法2
Map<String, String> map = new HashMap<String, String>();
for (Entry<String, String> entry : map.entrySet()) {
entry.getKey();
entry.getValue();
}
Fragment使用两种方式:
- 静态使用,即当做UI控件,在xml文件里面申明该控件,name要对应其实例类名
然后,就可以在fragment类中做各种操作,使Activity看起来干净清爽~~ - 动态使用,根据业务的需求,动态的添加、替换、移除Fragment。
FragmentManager fm = getFragmentManager();
FragmentTransaction transaction = fm.beginTransaction(); //开启一个Fragment事物
transaction.replace(R.id.fragment_container, mJSFragment);//替换当前Fragment
transaction.addToBackStack(null);//添加到类似返回栈
transaction.commit();//提交事物