2012年8月29日 星期三

Android 模擬器如何增加內存空間

一開始建好一個新的模擬器約只有200MB

進入命令提示字元
sdk路徑\tools\  輸入emulator -avd android2.3.3 -partition-size 512
藍色字為模擬器名稱
紅色字為大小
我的路徑是為以下

結果就變大了!!

Android 申請Google Map API KEY(2012-09-08)

2.打勾後發現要My certificate's MD5 fingerprint
到eclipse > Preferences > Android > Build > 找到debug.keystore的位置

 3.進入命令提示字元(找不到就在執行上打cmd)
到剛剛.android的資料夾上輸入
keytool -list -keystore debug.keystore
密碼的話如果沒設定直接按enter
就會產生一組key貼到第一張圖那個textbox裡然後點Generate API Key就會產生key了
再來就可以研究怎麼寫啦!!

 ps
1.如果不是像我一樣eclipse用攜帶式的方式
到其他台電腦那個key可能不能用
最簡單的方式就是把debug.keystore那個檔案copy蓋過去就不用再重新申請了

2012-09-08
2.如果出來是sha加密的話在keytool -v -list -keystore debug.keystore
即可

3.如果keytool無法使用
輸入
set path=安裝java jdk的路徑

2012年8月27日 星期一

Java ArrayList To Array

如果是C#就相當Easy啦直接toArray();就轉了But
Java並非如此

ArrayList<String>list = new ArrayList <String>(); list.toArray(new String[list.size()])

如果要抓其中某一資料

for(int i....

list.toArray(new String[list.size()])[i]

Java 補字串0

這有一個String 介紹的很好的網站
點我

方法1
String.format("%02d",   monthOfYear + 1);

那個2就是補成兩位
%02

2012年8月19日 星期日

Android Code LinearLayout(附範例)

今天課題主要是排版
LinearLayout是目前最常使用的
問是為需排出下列圖片的樣式
主要就是要知道LinearLayout橫排跟直排
大概只要自己排個一兩次就會了

重點有三個
view物件要設以下三個
android:layout_width 寬
android:layout_height 高
android:layout_weight 比重

LinearLayout要設定
android:orientation="vertical" 直的
android:orientation="horizontal" 橫的 如果沒有android:orientation的話他就是橫的喔!!
其中一種


範例如下

2012年8月13日 星期一

FancyBox 關閉


關閉FancyBox

protected void Button1_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this, this.GetType(), "訊息", "parent.jQuery.fancybox.close();", true);
}

Android Code 開發中Debug(Log)

可以把他印出來
開啟LogCat後可以看的
Log.d("", "訊息");
在LogCat會跑出字的顏色如下

─ Log.v:詳細資訊(Verbose)
─ Log.d:除錯訊息(Debug)
─ Log.i:通知訊息(Info)
─ Log.w:警告訊息(Warning)
─ Log.e:錯誤訊息(Error)

FancyBox 換頁

官網
之前都用thickbox因為可以跳出iframe整個網頁
最近發現FancyBox 也可以做
而且程式碼還更短更方便!!

跳出A.aspx後,用後端更換連結到B

protected void Button1_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this, this.GetType(), "訊息", "javascript:location.href='b.aspx'", true);
}


2012年8月11日 星期六

2012年8月10日 星期五

SQL Server 如何縮小Log記錄檔

今天終於遇到Log檔太大的問題連500G硬碟都無法備份了
還好之前有找許多方試當備用今天終於用上了

開啟管理工具輸入清掉Log檔 DUMP TRANSACTION DBNAME WITH NO_LOG
但清完後發覺怎麼還是一樣大呢? 右鍵工作 > 壓縮 > 檔案 > 釋放未使用的空間之前,先重新組織頁面打上你要的大小,確定後就ok


2008 & 2012
USE [資料庫名稱]
GO
ALTER DATABASE [資料庫名稱] SET RECOVERY SIMPLE WITH NO_WAIT
DBCC SHRINKFILE(記錄檔邏輯名稱, 1)
ALTER DATABASE [資料庫名稱] SET RECOVERY FULL WITH NO_WAIT
GO
2000& 2005 USE [資料庫名稱]
GO
DBCC SHRINKFILE(記錄檔邏輯名稱, 1)
BACKUP LOG [資料庫名稱] WITH TRUNCATE_ONLY
DBCC SHRINKFILE(記錄檔邏輯名稱, 1)
GO


以下為來源
參考網頁1
參考網頁2
參考網頁3
參考網頁4

2012年8月8日 星期三

Android Code Toast(提示視窗)(附範例)

這個是相當好用的元件Toast
效果如下
以下是參考網頁後製作的,範例如下
點我下載

2012年8月6日 星期一

Asp.net TextBox如何換行(System.Environment.NewLine)

最近在做將多篇文章合成一篇
但每篇都要換行在TextBox上面顯示
1.先抓出每一篇文章,文章斷行用\\r\\n新增到資料庫
2.抓出來TextBox時用
 TextBox2.Text = dt.Rows[0]["Content"].ToString().Replace("\\r\\n", System.Environment.NewLine);
把\\r\\n變成System.Environment.NewLine,這樣顯示出來就會換行了\\r\\n可自訂啦!!重點是System.Environment.NewLine

參考網址

2012年8月5日 星期日

Java split字串轉成字串陣列


主要就是要把字串變成字串陣列時用
|是個特別的格開符號
如果在字串中要用|格開必需用\\|跳脫字元來做
範例如下

      public static void main(String[] args) {
String splitString = "Hello:today,is|Sunday";
String[] names = splitString.split("(:)|(,)|(\\|)");
for (String name : names) {
System.out.println(name);
}
}

2012年8月4日 星期六

Java 使用工具加入建構值

滑數右鍵出現
source Generate Getters and Setters 就會自動建好了


Java 帶入無限個參數的fuction



public class MethodParameter {

/**
* @param args
*/
public static void main(String[] args) {
System.out.println(getString(10,20));
System.out.println(getString(10,20,"Hello"));
System.out.println(getString(10,20,"Hello","World"));
String [] sa = {"Hello","World"};
System.out.println(getString(10,20,sa));
}

        //...c帶入 string
static String getString(int a,int b,String ...c){
String toReturn = ""+a+","+b;
for(String s : c)
toReturn+=","+s;
return toReturn;
}

}

Java 算幾分鐘後的Class



public class MyTime {
//final 靜態常數不會修改的
public static final int HOURS_PER_DAY = 24;
public static final int MINUTES_PER_HOUR = 60;

private int mHour;
private int mMinute;


public void setMytime(int inHour, int inMinute) {
if( inHour < 0 && inHour >= HOURS_PER_DAY)
return;

if(inMinute < 0  && inMinute >= HOURS_PER_DAY)
return;

mHour = inHour;
mMinute = inMinute;
}


public void passMinute(int inMinute) {
// (原本小時 + (分+傳入的分)/24小時的餘數)/24小時的餘數
mHour = (mHour + (mMinute + inMinute) / MINUTES_PER_HOUR)
% HOURS_PER_DAY;

//(分+傳入的分)/60分的餘數
mMinute = (mMinute + inMinute)%MINUTES_PER_HOUR;
}


public String toString() {
return (mHour >= 10 ? "": "0" )+ mHour + ":" + (mMinute >= 10 ? "" : "0") + mMinute;
}

}


//呼叫方式

                MyTime mTime = new MyTime();
mTime.setMytime(6, 30);
System.out.println(mTime);
mTime.setMytime(8, 50);
System.out.println(mTime);
mTime.passMinute(120);
System.out.println(mTime.toString());

Java switch


                int key = 71;
switch (key) {
case 1:
System.out.println("等級1");
break;
case 2:
System.out.println("等級2");
break;
case 3:
System.out.println("等級3");
break;
case 4:
System.out.println("等級4");
break;
case 5:
System.out.println("等級5");
break;
default:
System.out.println("等級不在範圍內");
break;
}

Java froeach


 //對每個陣列v1 在a裡面
for(int[] v1 : a){
//對每個整立v 在v1裡面
for(int v : v1){
System.out.print(v +",");
}
}


for(型態:陣列){


}