package edu.example.ta.stockbyzql.ui;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.res.Resources;
import android.graphics.Color;
import android.os.Bundle;
import android.os.Handler;
import android.os.StrictMode;
import android.util.Log;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.KeyEvent;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AutoCompleteTextView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.Filter;
import android.widget.Filterable;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import edu.example.ta.stockbyzql.R;
import edu.example.ta.stockbyzql.R.array;
import edu.example.ta.stockbyzql.R.id;
import edu.example.ta.stockbyzql.R.layout;
import edu.example.ta.stockbyzql.R.menu;
import edu.example.ta.stockbyzql.dao.StockCode;
import edu.example.ta.stockbyzql.util.DataSource;
import edu.example.ta.stockbyzql.util.MySharedPreference;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class MainActivity extends Activity implements OnItemClickListener {
public static final String TAG = "MainActivity";
private List<StockCode> stockCodes;
private AutoCompleteTextView stockCodeText;
private TextView stock_sh_index, stock_sh_change, stock_sz_index,
stock_sz_change, stock_chuang_index, stock_chuang_change;
private static final String STOCK_CODES_FILE = "stockcodes";
private List<Map<String, Object>> list;
private String stockCodeString = "";
private String[] stockCodeStrings = null;
private final static String stockSHCode = "sh000001";
private final static String stockSZCode = "sz399001";
private final static String stockChuangCode = "sz399006";
private MyShowAdapter adapter;
private int i = 0;
private long exitTime = 0;
private ListView stockListView;
private Handler handler;
private Runnable runnable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
closeStrictMode();
initUI();
getData();
getstocksh();
getstocksz();
getstockchuang();
initHandler();
}
private void initUI() {
stockListView = (ListView) findViewById(R.id.listview);
stockListView.setOnItemClickListener(this);
registerForContextMenu(stockListView);
stockCodeText = (AutoCompleteTextView) findViewById(R.id.editText_stockId);
Resources res = getResources();
String[] stock_names = res.getStringArray(R.array.stocknames);
String[] stock_codes = res.getStringArray(R.array.stockcodes);
String[] stockcode_sina = res.getStringArray(R.array.stockcodes_sina);
String[] stock_letter = res.getStringArray(R.array.stock_letters);
stockCodes = new ArrayList<StockCode>();
for (int i = 0; i < stock_names.length; i++) {
StockCode stockcode = new StockCode(stock_names[i], stock_codes[i],
stockcode_sina[i], stock_letter[i]);
stockCodes.add(stockcode);
}
StockCodeAdapter adapterAuto = new StockCodeAdapter(stockCodes,
getApplicationContext(), stockCodeText);
stockCodeText.setAdapter(adapterAuto);
stockCodeText.setOnItemClickListener(this);
stockCodeStrings = new String[1024];
list = new ArrayList<Map<String, Object>>();
adapter = new MyShowAdapter(this);
}
private void initHandler() {
handler = new Handler();
runnable = new Runnable() {
public void run() {
getstocksh();
getstocksz();
getstockchuang();
reflashStock();
handler.postDelayed(this, 1000);
}
};
handler.removeCallbacks(runnable);
handler.postDelayed(runnable, 1000);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
// TODO Auto-generated method stub
Intent intent = new Intent(MainActivity.this, StockDetailActivity.class);
String stockCode = list.get(position).get("id").toString();
Log.i(TAG, "--->" + stockCode);
intent.putExtra("id", stockCode);
startActivity(intent);
}
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
// TODO Auto-generated method stub
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item
.getMenuInfo();
switch (item.getItemId()) {
case R.id.del:
handler.removeCallbacks(runnable);
int position = info.position;
list.remove(position);
Log.i("MainActivity","1"+stockCodeStrings.toString());
stockCodeStrings = delStockCode(stockCodeStrings, position);
Log.i("MainActivity","2"+stockCodeStrings.toString());
adapter.notifyDataSetChanged();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
handler.postDelayed(runnable, 1000);
}
return super.onMenuItemSelected(featureId, item);
}
private String[] delStockCode(String[] stockCodeStrings, int position) {
// TODO Auto-generated method stub
String[] str=stockCodeStrings;
List<String> list = new ArrayList<String>();
for (int i = 0; i < str.length; i++) {
list.add(str[i]);
}
list.remove(position);
String[] newStr = list.toArray(new String[1]); // 返回一个包含所有对象的指定类型的数组
return newStr;
}
private void reflashStock() {
list = DataSource.getDataSource(stockCodeStrings);
adapter.setList(list);
stockListView.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
public class MyShowAdapter extends BaseAdapter {
private Context context;
private List<Map<String, Object>> list;
public MyShowAdapter(Context context) {
this.context = context;
}
public void setList(List<Map<String, Object>> list) {
this.list = list;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return list.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(final int position, View convertView,
ViewGroup parent) {
// TODO Auto-generated method stub
Map<String, Object> map = new HashMap<String, Object>();
String stock_nowprice_String, stock_yestodayPrice_String;
ViewHolder viewHolder = null;
if (null == convertView) {
convertView = View.inflate(context, R.layout.stock_itemlist,
null);
viewHolder = new ViewHolder();
viewHolder.stockName_item = (TextView) convertView
.findViewById(R.id.stock_name);
viewHolder.stockID_item = (TextView) convertView
.findViewById(R.id.stock_id);
viewHolder.stockNow_item = (TextView) convertView
.findViewById(R.id.stock_now);
viewHolder.stockYes_item = (TextView) convertView
.findViewById(R.id.stock_yesprice);
viewHolder.stockTo_item = (TextView) convertView
.findViewById(R.id.stock_toprice);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
map = list.get(position);
stock_nowprice_String = map.get("nowprice").toString();
stock_yestodayPrice_String = map.get("yestodayOverPrice")
.toString();
String increaseString = getIncrease(stock_nowpri
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
StockByZQL.zip (67个子文件)
StockByZQL
gradlew 5KB
settings.gradle 16B
StockByZQL.iml 864B
gradle
wrapper
gradle-wrapper.properties 236B
gradle-wrapper.jar 52KB
local.properties 419B
gradlew.bat 2KB
gradle.properties 747B
.gitignore 127B
app
src
androidTest
java
edu
example
ta
stockbyzql
ExampleInstrumentedTest.java 777B
test
java
edu
example
ta
stockbyzql
ExampleUnitTest.java 419B
main
AndroidManifest.xml 1KB
res
mipmap-hdpi
ic_launcher.png 3KB
ic_launcher_round.png 5KB
mipmap-xxxhdpi
ic_launcher.png 9KB
ic_launcher_round.png 15KB
mipmap-xhdpi
ic_launcher.png 4KB
ic_launcher_round.png 7KB
drawable-hdpi
back_btn_click.png 622B
ic_launcher.png 7KB
add_btn.png 28KB
back.png 3KB
stock_icon.png 30KB
values-v11
styles.xml 331B
mipmap-anydpi-v26
ic_launcher.xml 276B
ic_launcher_round.xml 276B
menu
action.xml 284B
mipmap-mdpi
ic_launcher.png 2KB
ic_launcher_round.png 3KB
drawable
ic_launcher_background.xml 6KB
drawable-mdpi
ic_launcher.png 4KB
layout
stockcode_item.xml 1KB
stock_itemtitles.xml 2KB
stock_itemlist.xml 2KB
stockdetail.xml 10KB
tab2.xml 12KB
tab1.xml 606B
tab4.xml 558B
tab5.xml 559B
tab3.xml 557B
activity_main.xml 5KB
drawable-v24
ic_launcher_foreground.xml 2KB
drawable-xxhdpi
ic_launcher.png 24KB
drawable-xhdpi
ic_launcher.png 12KB
values
stock_letters.xml 73KB
colors.xml 214B
stockcodes_sina.xml 84KB
stockname.xml 94KB
stockcodes.xml 79KB
strings.xml 1KB
styles.xml 248B
mipmap-xxhdpi
ic_launcher.png 6KB
ic_launcher_round.png 10KB
values-v14
styles.xml 388B
java
edu
example
ta
stockbyzql
ui
StockDetailActivity.java 18KB
MainActivity.java 23KB
dao
StockCode.java 1KB
SinaStockInfo.java 7KB
util
MySinaStockClient.java 9KB
MySharedPreference.java 1KB
DataSource.java 2KB
libs
commons-httpclient-3.1.jar 298KB
app.iml 12KB
.gitignore 8B
build.gradle 1019B
proguard-rules.pro 772B
build.gradle 573B
共 67 条
- 1
资源评论
Jhonhee
- 粉丝: 8
- 资源: 38
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功