利用google analytics來幫助你觀看網路流量
對於偵測搜尋引擎的抓取與使用人數的造訪提供一個信任的工具
網路上有許多介紹關於google analytics的介紹
不妨有興趣的朋友可以去google一下,相信有很多資訊可以供參考
google analytics簡單畫面呈現如下:
從造訪量、人數訪問上我們可以先進行簡單的了解,並且得知你部落格或相關網頁的一些流量
以作為未來調整網站架設、blog寫作相關方向
不妨學習一下google analytics操作工具!
2012年4月20日 星期五
2012年4月18日 星期三
android範列程式-密碼認證清除按鈕
學習重點:
(1)利用button清除字串的方式
(2)
可以自動抓取該java程式名稱,而不用自動寫入該程式名稱
程式範列如下:
(1)利用button清除字串的方式
(2)
Toast toast=Toast.makeText(ATMToast1Activity.this, "提示文字內容", Toast.LENGTH_LONG);效果等同
Toast toast=Toast.makeText(getApplicationContext(), "提示文字內容", Toast.LENGTH_LONG);利用getApplicationContext()
可以自動抓取該java程式名稱,而不用自動寫入該程式名稱
程式範列如下:
package ATMToast1.com;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class ATMToast1Activity extends Activity {
//建立全域變數
private EditText edtATM;
private Button btnN1, btnN2, btnN3, btnBack;
private Button btnN4, btnN5, btnN6, btnOK;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//取得介面元件
edtATM=(EditText)findViewById(R.id.edtATM);
btnN1=(Button)findViewById(R.id.btnN1);
btnN2=(Button)findViewById(R.id.btnN2);
btnN3=(Button)findViewById(R.id.btnN3);
btnN4=(Button)findViewById(R.id.btnN4);
btnN5=(Button)findViewById(R.id.btnN5);
btnN6=(Button)findViewById(R.id.btnN6);
btnBack=(Button)findViewById(R.id.btnBack);
btnOK=(Button)findViewById(R.id.btnOK);
//設定共用事件
btnN1.setOnClickListener(listener);
btnN2.setOnClickListener(listener);
btnN3.setOnClickListener(listener);
btnN4.setOnClickListener(listener);
btnN5.setOnClickListener(listener);
btnN6.setOnClickListener(listener);
btnBack.setOnClickListener(listener);
btnOK.setOnClickListener(listener);
}
private Button.OnClickListener listener=new Button.OnClickListener() {
@Override
public void onClick(View v) {
switch(v.getId())
{
case R.id.btnN1: //按 1 鈕
displayATM("1");
break;
case R.id.btnN2: //按 2 鈕
displayATM("2");
break;
case R.id.btnN3: //按 3 鈕
displayATM("3");
break;
case R.id.btnN4: //按 4 鈕
displayATM("4");
break;
case R.id.btnN5: //按 5 鈕
displayATM("5");
break;
case R.id.btnN6: //按 6 鈕
displayATM("6");
break;
case R.id.btnBack: //按 清除 鈕
String str=edtATM.getText().toString();
if(str.length()>0) {
str=str.substring(0, str.length()-1);
edtATM.setText(str);
}
break;
case R.id.btnOK: //按 確定 鈕
str=edtATM.getText().toString();
if(str.equals("123456")) {
Toast toast=Toast.makeText(ATMToast1Activity.this, "密碼正確,歡迎使用提款功能!", Toast.LENGTH_LONG);
toast.show();
} else {
Toast toast=Toast.makeText(getApplicationContext(), "密碼錯誤,請重新輸入。", Toast.LENGTH_LONG);
toast.show();
edtATM.setText("");
}
break;
}
}
};
private void displayATM(String s) {
String str=edtATM.getText().toString();
edtATM.setText(str + s);
}
}
android範列程式-數字按鈕事件
學習重點:
(1)利用TableLayout進行版面配置,優點是簡潔有序。
(2)android:layout_span進行main.xml排版跨欄方式。
TableLayout版面配置
畫面呈現結果
額外補充版面排置方式(1)
額外補充版面排置方式(2)
(1)利用TableLayout進行版面配置,優點是簡潔有序。
(2)android:layout_span進行main.xml排版跨欄方式。
TableLayout版面配置
畫面呈現結果
package ATMInput.com;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class ATMInputActivity extends Activity {
//建立全域變數
private EditText edtATM;
private Button btnN1, btnN2, btnN3;
private Button btnN4, btnN5, btnN6;
private Button btnN7, btnN8, btnN9;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//取得介面元件
edtATM=(EditText)findViewById(R.id.edtATM);
btnN1=(Button)findViewById(R.id.btnN1);
btnN2=(Button)findViewById(R.id.btnN2);
btnN3=(Button)findViewById(R.id.btnN3);
btnN4=(Button)findViewById(R.id.btnN4);
btnN5=(Button)findViewById(R.id.btnN5);
btnN6=(Button)findViewById(R.id.btnN6);
btnN7=(Button)findViewById(R.id.btnN7);
btnN8=(Button)findViewById(R.id.btnN8);
btnN9=(Button)findViewById(R.id.btnN9);
//設定共用事件
btnN1.setOnClickListener(listener);
btnN2.setOnClickListener(listener);
btnN3.setOnClickListener(listener);
btnN4.setOnClickListener(listener);
btnN5.setOnClickListener(listener);
btnN6.setOnClickListener(listener);
btnN7.setOnClickListener(listener);
btnN8.setOnClickListener(listener);
btnN9.setOnClickListener(listener);
}
private Button.OnClickListener listener=new Button.OnClickListener() {
@Override
public void onClick(View v) {
switch(v.getId())
{
case R.id.btnN1: //按 1 鈕
displayATM("1");
break;
case R.id.btnN2: //按 2 鈕
displayATM("2");
break;
case R.id.btnN3: //按 3 鈕
displayATM("3");
break;
case R.id.btnN4: //按 4 鈕
displayATM("4");
break;
case R.id.btnN5: //按 5 鈕
displayATM("5");
break;
case R.id.btnN6: //按 6 鈕
displayATM("6");
break;
case R.id.btnN7: //按 7 鈕
displayATM("7");
break;
case R.id.btnN8: //按 8 鈕
displayATM("8");
break;
case R.id.btnN9: //按 9 鈕
displayATM("9");
break;
}
}
};
private void displayATM(String s) {
String str=edtATM.getText().toString();
edtATM.setText(str + s);
}
}
額外補充版面排置方式(1)
額外補充版面排置方式(2)
android範列程式-共用相同的「監聽事件」的使用
學習重點:
(1)設定 button 元件 Click 事件共用相同的「監聽事件」
(2)在相同的共用監聽事件下,利用switch...case break;進行判斷
(1)設定 button 元件 Click 事件共用相同的「監聽事件」
(2)在相同的共用監聽事件下,利用switch...case break;進行判斷
package MultiButton.com;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MultiButtonActivity extends Activity {
// 宣告全域變數
private TextView txtShow;
private Button btnZero,btnOne,btnTwo;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 取得資源類別檔中的介面元件
txtShow=(TextView)findViewById(R.id.txtShow);
btnZero=(Button)findViewById(R.id.btnZero);
btnOne=(Button)findViewById(R.id.btnOne);
btnTwo=(Button)findViewById(R.id.btnTwo);
// 設定 button 元件 Click 事件共用 myListner
btnZero.setOnClickListener(myListner);
btnOne.setOnClickListener(myListner);
btnTwo.setOnClickListener(myListner);
}
// 定義 onClick() 方法
private Button.OnClickListener myListner=new Button.OnClickListener(){
@Override
public void onClick(View v) {
String s=txtShow.getText().toString();
switch (v.getId())
{
case R.id.btnZero:
{
txtShow.setText(s + "0");
break;
}
case R.id.btnOne:
{
txtShow.setText(s + "1");
break;
}
case R.id.btnTwo:
{
txtShow.setText(s + "2");
break;
}
}
}
};
}
android範列程式-英哩與時速計算
學習重點:
(1)btnTranListener的利用,多重監聽事件使用
(2)資料型態改變int和Integer轉換
執行畫面
程式簡述
1.表示btnTranListener()寫法相同,直接代入
2.private Button.OnClickListener XXXX = new Button.OnClickListener(), 快速記憶方式
3.利用.parseInt將資料型態轉換成整數
原始碼如下:
(1)btnTranListener的利用,多重監聽事件使用
(2)資料型態改變int和Integer轉換
執行畫面
程式簡述
1.表示btnTranListener()寫法相同,直接代入
2.private Button.OnClickListener XXXX = new Button.OnClickListener(), 快速記憶方式
3.利用.parseInt將資料型態轉換成整數
原始碼如下:
package MileToKm.com;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MileToKmActivity extends Activity {
// 宣告全域變數
private EditText edtMile;
private TextView txtKm;
private Button btnTran;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 取得資源類別 R 中的介面元件 id
edtMile=(EditText)findViewById(R.id.edtMile);
txtKm=(TextView)findViewById(R.id.txtKm);
btnTran=(Button)findViewById(R.id.btnTran);
// 設定 button 元件 Click 事件的 listener 為 btnTranListener
btnTran.setOnClickListener(btnTranListener);
}
// 定義 onClick() 方法
private Button.OnClickListener btnTranListener=new Button.OnClickListener(){
public void onClick(View v){
int miles=Integer.parseInt(edtMile.getText().toString());
double km=1.61*(double)miles;
txtKm.setText("時速= " + km + " 公里");
}
};
}
訂閱:
文章 (Atom)








