1.列表分页的情况下,根据屏幕的高度和字体大小来确定每页显示多少行,按如下步骤:
//getWindowManager()获取显示定制窗口的管理器,getDefaultDisplay()获取默认显示Display对象
Display display = getWindowManager().getDefaultDisplay();
//屏幕宽度
int defaultWidth = display.getWidth();
//屏幕高度除去顶部的查询条件
int defaultHeight = display.getHeight();
//如果该页面不只有列表,比如说列表上方还有查询条件,可以乘以相应的百分比
int defaultHeight = (int)(display.getHeight()*0.8);
//获取当前字体的大小
float mCurTextSize = new TextView(this).getTextSize();//this指当前的上下文,如Activity
Paint paint = new Paint();
paint.setTextSize(mCurTextSize);
FontMetrics fm = paint.getFontMetrics();
//当前字体的实际高度
int height = (int)Math.ceil(fm.descent - fm.ascent);
//确定行高,根据实际需要
int lineHeight = (int)height*2;
//确定每面能显示多少行
int lineNum = defaultHeight/height;
2.标题、状态栏的隐藏
1)标题栏隐藏,在Activity.setContentView()方法之前加:
requestWindowFeature(Window.FEATURE_NO_TITLE);
2)状态栏隐藏(全屏),在Activity.setContentView()方法之前加:
//定义全屏参数
int flag = WindowManager.LayoutParams.FLAG_FULLSCREEN;
//获取窗口对象
Window myWindow = this.getWindow();
//设置Flag标识
myWindow.setFlags(flag, flag);
3.页面之前的切换
1)直接换布局文件即可,setContentView(R.layout.XXX);
2)使用Intent对象:
//new 一个Intent对象
Intent intent = new Intent();
//从当前activity FromActivity,跳到ToActivity
intent.setClass(FromActivity.this,ToActivity.class);
//new 一个Bundle对象,并将要传递的数据传入
Bundle bundle = new Bundle();
bundle.putDouble("height",162);
bundle.putString("sex",'nv');
//将Bundle对象assign给Intent
intent.putExtras(bundle);
//调用一个新的activity
startActivity(intent);
//关闭当前activity
FromActivity.this.finish();
在ToActivity页面取传来的参数
Intent intent = this.getIntent();
//取得Intent中的Bundle对象
Bundle bundle = intent.getExtras();
//取得Bundle对象中的数据
String sex = bundle.getString("sex");
double height = bundle.getDouble("height");
再返回到之前的activity,可以加个“返回”按钮,在其点击事件中写:
ToActivity.this.setResult(RESULT_OK,intent);
ToActivity.this.finish();