之前的我们已经通过OAuth认证,通过了新浪的授权并且取得了用户相关的信息。今天开始我们来发送一条微博试试。首先是发送微博界面的布局设计。先看布局代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/White"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg"
android:gravity="center"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/send_left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:background="@drawable/pre" >
</ImageButton>
<LinearLayout
android:id="@+id/send_middle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@+id/send_right"
android:layout_toRightOf="@id/send_left"
android:gravity="center"
android:orientation="vertical" >
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/newstatus"
android:gravity="center" >
</ImageButton>
</LinearLayout>
<ImageButton
android:id="@+id/send_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:background="@drawable/send" >
</ImageButton>
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
<EditText
android:id="@+id/editStatus"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="3dip"
android:background="@color/White"
android:gravity="top"
android:hint="您想说点什么呢...">
</EditText>
<ImageView
android:id="@+id/thumbImage"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:padding="3dip"
android:layout_alignBottom="@id/editStatus"
android:layout_alignLeft="@id/editStatus" />
<TextView
android:id="@+id/statusCount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/editStatus"
android:layout_alignRight="@id/editStatus" />
</RelativeLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<GridView
android:id="@+id/statusTool"
android:layout_width="fill_parent"
android:layout_height="30dip"
android:background="@drawable/maintab_toolbar_bg"
android:gravity="center"
android:numColumns="4" >
</GridView>
</LinearLayout>
</LinearLayout>
我们为底部的GridView添加一个适配器,用来显示底部按钮相关内容
/*
* 发送微博,评论,转发页面底部GridView工具栏Adapter
*/
public class BottomBarAdapter extends BaseAdapter{
private ArrayList<HashMap<String,Object>> data;
private Context context;
private String[] menuNameArray;
private int[] imageResourceArray;
public BottomBarAdapter(String[] menuNameArray,
int[] imageResourceArray, Context context){
this.imageResourceArray = imageResourceArray;
this.menuNameArray = menuNameArray;
this.context = context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return imageResourceArray.length;
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return imageResourceArray[arg0];
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
LayoutInflater flater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = flater.inflate(R.layout.bottombar, null);
TextView textview = (TextView)convertView.findViewById(R.id.buttombarText);
ImageView imageview = (ImageView)convertView.findViewById(R.id.buttombarImage);
// HashMap<String,Object> button = data.get(position);
String name = menuNameArray[position];
int pic = imageResourceArray[position];
if(name!=""){
textview.setText(name);
}else{
textview.setVisibility(View.GONE);
}
imageview.setImageResource(pic);
return convertView;
}
}
接下来在addStatusActivity上我们来实现这个布局,并为GridView添加适配器
public class AddStatusActivity extends Activity {
private Context context;
private GridView statusTool;
/** 底部菜单图片 **/
int[] detail_toolbar_image_array = { R.drawable.pic, R.drawable.at,
R.drawable.topic, R.drawable.face };
/** 底部菜单文字 **/
String[] detail_toolbar_name_array = { "", "", "", "" };
private final int TOOLBAR_ITEM_PIC = 0;// 图片
private final int TOOLBAR_ITEM_AT = 1;// @
private final int TOOLBAR_ITEM_TOPIC = 2;// 话题
private final int TOOLBAR_ITEM_EMMOTION = 3;// 表情
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.addstatus);
this.context = this;
setView();
}
/*
* 建立视图
*/
private void setView() {
statusTool = (GridView) findViewById(R.id.statusTool);
statusTool.setAdapter(new BottomBarAdapter(detail_toolbar_name_array,detail_toolbar_image_array, context));
}
}
注: 我们可以在布局文件中看到有一个id为thumbImage的ImageView,以及一个id为statusCount的TextView。这两个控件分别是用来显示在写微博时添加的图片,以及统计微博已经输入的字数。具体的实现方法将在后面的几篇博文中提到。我们先来看看效果图
- 大小: 34.4 KB
- 大小: 33.8 KB
分享到:
相关推荐
Android:SNS客户端开发八:发送带图片的微博 第一种方法
报报告:SNS在中国的机会及未来发展趋向报报告:SNS在中国的机会及未来发展趋向
基于安卓Android的SNS社交网络客户应用需求调研报告范本.pdf基于安卓Android的SNS社交网络客户应用需求调研报告范本.pdf基于安卓Android的SNS社交网络客户应用需求调研报告范本.pdf基于安卓Android的SNS社交网络客户...
电子商务案例分析:SNS平台案例.ppt
本人在12年7月份研究android如何与SNS网站接入时写的备忘录,主要信息也是收集于各SNS网站的接入开发说明,然后加以精简,希望节省大家时间,对大家有帮助。主要网站包括开心网、腾讯微博、新浪微博、人人网。
开心网CEO程炳皓:SNS的3个方向.docx
路过插件.开源sns必备插件。
人人都玩开心网:Ext+JS+Android+SSH整合开发Web与移动SNS
Android的SNS App源码,内容自己看哈,互相交流学习下
微博通是一款基于API的多个微博平台及SNS同步更新工具。通过微博通,用户可以向已注册的各个微博平台发送消息和查看各个平台接收的信息。目前支持:新浪微博、腾讯微博、搜狐微博、网易微博、百度说吧、139说客、...
阿里投资新浪微博:马云的SNS之梦.docx
目前支持:新浪微博、腾讯微博、搜狐微博、网易微博、百度说吧、移动微博、嘀咕、饭否、做啥、人间网、天涯微博、人民微博、新华微博、Google Buzz、豆瓣、凤凰微博、QQ空间、开心网、人人...,共20多家微博及SNS网站...
我的第二个android sns应用程序。 与相比,此应用程序是升级版本。 잭트는 진화된잭트NS NS케케케케케NS NS NS。 。른른。구현했습니구현했습니구현했습니구현했습니。 목차 기술스택 언어: Java,PHP,...
sns 数据结构 新闻系统数据结构 微博数据结构等多种数据结构
产品经理PRD实战攻略:设计SNS社区.doc
记事狗微博系统采用php mysql开发并开源发布,可承载千万级用户,其支持Wap、3G、Android客户端、iphone客户端、短信、微信等多种方式发布内容,并可选择同步到主流的微博平台(也支持微博帐户登录),内置的插件和...
基于安卓Android的SNS社交网络客户应用需求调研报告范本.docx基于安卓Android的SNS社交网络客户应用需求调研报告范本.docx基于安卓Android的SNS社交网络客户应用需求调研报告范本.docx基于安卓Android的SNS社交网络...
Android经典开发---豆瓣网移动客户端 讲解+源代码
Caokun.Net:trade_mark: SNS:开源社交网络服务软件,PHP + MySQL编写