whoisandroid 发表于 2013-1-28 18:53:58

系统中所有对话框,默认布局方式都是居中显示

if(SystemProperties.get("EXTERNAL_STORAGE_VIRTUAL_STATE").trim().equals("virtual")&&
                SystemProperties.get("EXTERNAL_SD_STATE").trim().equals("insert")){

系统中所有对话框,默认布局方式都是居中显示,如果想自定义显示位置可以考虑如下方式:
……
Window mWindow = dialog.getWindow();
    WindowManager.LayoutParams lp = mWindow.getAttributes();
    lp.x= xxx;
    lp.y= xxx;

缺省居中lp.x=0,lp.y=0

   新坐标 x小于0左移,大于0右移;y小于0上移,大于0下移


      @Override
protected void onDestroy() {
super.onDestroy();
android.os.Process.killProcess(android.os.Process.myPid());
}



    public static String wrap(String str, int wrapLength, String newLineStr, boolean wrapLongWords) {
      if (str == null) {
            return null;
      }
      if (newLineStr == null) {
            newLineStr = System.getProperty("line.separator");
      }
      if (wrapLength < 1) {
            wrapLength = 1;
      }
      int inputLineLength = str.length();
      int offset = 0;
      StringBuffer wrappedLine = new StringBuffer(inputLineLength + 32);
      
      while ((inputLineLength - offset) > wrapLength) {
            if (str.charAt(offset) == ' ') {
                offset++;
                continue;
            }
            int spaceToWrapAt = str.lastIndexOf(' ', wrapLength + offset);

            if (spaceToWrapAt >= offset) {
                // normal case
                wrappedLine.append(str.substring(offset, spaceToWrapAt));
                wrappedLine.append(newLineStr);
                offset = spaceToWrapAt + 1;
               
            } else {
                // really long word or URL
                if (wrapLongWords) {
                  // wrap really long word one line at a time
                  wrappedLine.append(str.substring(offset, wrapLength + offset));
                  wrappedLine.append(newLineStr);
                  offset += wrapLength;
                } else {
                  // do not wrap really long word, just extend beyond limit
                  spaceToWrapAt = str.indexOf(' ', wrapLength + offset);
                  if (spaceToWrapAt >= 0) {
                        wrappedLine.append(str.substring(offset, spaceToWrapAt));
                        wrappedLine.append(newLineStr);
                        offset = spaceToWrapAt + 1;
                  } else {
                        wrappedLine.append(str.substring(offset));
                        offset = inputLineLength;
                  }
                }
            }
      }

      // Whatever is left in line is short enough to just pass through
      wrappedLine.append(str.substring(offset));

      return wrappedLine.toString();
    }
页: [1]
查看完整版本: 系统中所有对话框,默认布局方式都是居中显示