在做項目的過程中,我用到瞭騰訊微博的分享功能!但是呢,我隻要一個發送微博的功能,在網上找瞭好多,都沒有合適的!如果直接使用騰訊的SDK的話,軟件包的體積會很大的,我們可以隻使用有用的東西!
因此我整理瞭一下,現在做成瞭一個教程:
效果圖如下:
網上有一個類似的教程!可是裡面的功能不是很多,我現在寫的這個東西,你們可以直接使用到項目中,隻要簡單修改寫就可以瞭!
例如我增加瞭字數的判斷,在發佈微博的時候,如果你的字數超過140字就用紅色字體標註,並把發送按鈕置為不可見!讓用戶發不瞭,就可以避免發送失敗!更貼心,在140個字以內的話,就用灰色顯示,詳細看圖片:
順便說下,這個代碼可以識別英文和中文,兩個英文字母對應一個漢字。
核心代碼如下:
[java]
qqcontent.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// 這些是對文本進行監聽,如果有變化就對把文本上的數字改動,讓用戶知道輸入多少數字瞭,如果過多或者沒有輸入就把發送按鈕變成不可點擊的形式!
String textContent = qqcontent.getText().toString();
double len = 0;
for (int i = 0; i < textContent.length(); i++) {
int temp = (int) textContent.charAt(i);
if (temp > 0 && temp < 127) {
len += 0.5;
} else {
len++;
}
}
if (len > 0 && len <= 140) {
len = 140 – len;
tv_text_limit.setTextColor(Color.GRAY);
if (!send.isEnabled()) {
send.setEnabled(true);
}
tv_text_limit.setText(Math.round(len) + "/140 字");
} else {
if (len != 0) {
len = len – 140;
}
tv_text_limit.setTextColor(Color.RED);
if (send.isEnabled()) {
send.setEnabled(false);
}
tv_text_limit.setText(Math.round(len) + "/140 字");
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
具體代碼和圖片信息可以去下面的這個帖子裡面看看:
http://www.apkbus.com/android-43832-1-1.html
摘自 努力就有收獲