package com.shejiaomao.weibo.service.adapter; import java.util.List; import com.shejiaomao.maobo.R; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import com.cattong.commons.ServiceProvider; import com.cattong.commons.http.auth.Authorization; import com.cattong.commons.util.ListUtil; import com.cattong.entity.ConfigApp; import com.shejiaomao.weibo.activity.AddAccountActivity; import com.shejiaomao.weibo.db.ConfigAppDao; import com.shejiaomao.weibo.service.BaseListAdapter; public class ConfigAppSpinnerAdapter extends BaseListAdapter<ConfigApp> { private ConfigAppDao configAppDao; public ConfigAppSpinnerAdapter(AddAccountActivity context) { super(context); this.configAppDao = new ConfigAppDao(context); setServiceProvider(context.getSp()); } public void setServiceProvider(ServiceProvider sp) { if (sp == null) { return; } dataList.clear(); Authorization auth = new Authorization(sp); ConfigApp configApp = new ConfigApp(); configApp.setAppId(-1l); configApp.setServiceProvider(sp); configApp.setAppName("默认尾巴"); configApp.setAppKey(auth.getoAuthConfig().getConsumerKey()); configApp.setAppSecret(auth.getoAuthConfig().getConsumerSecret()); configApp.setCallbackUrl(auth.getoAuthConfig().getCallbackUrl()); dataList.add(configApp); List<ConfigApp> tempList = configAppDao.findApps(sp); if (ListUtil.isNotEmpty(tempList)) { dataList.addAll(tempList); } configApp = new ConfigApp(); configApp.setAppId(-2l); configApp.setServiceProvider(sp); configApp.setAppName("添加自定义尾巴"); configApp.setAppKey(auth.getoAuthConfig().getConsumerKey()); configApp.setAppSecret(auth.getoAuthConfig().getConsumerSecret()); configApp.setCallbackUrl(auth.getoAuthConfig().getCallbackUrl()); dataList.add(configApp); this.notifyDataSetChanged(); } @Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = inflater.inflate(R.layout.list_item_app_key, null); } ConfigApp configApp = (ConfigApp)getItem(position); if (configApp == null) { return convertView; } TextView tvAppKeyName = (TextView) convertView.findViewById(R.id.tvAppKeyName); tvAppKeyName.setText(configApp.getAppName()); return convertView; } @Override public View getDropDownView(int position, View convertView, ViewGroup parent) { return getView(position, convertView, parent); } }