package com.jinanchang.jinxueyuan.activity;
import androidx.appcompat.app.AppCompatActivity;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import com.jinanchang.jinxueyuan.R;
import com.jinanchang.jinxueyuan.adapter.BaiWenAdapter;
import com.jinanchang.jinxueyuan.adapter.KHCAdapter;
import com.jinanchang.jinxueyuan.adapter.TypeAdaper;
import com.jinanchang.jinxueyuan.base.BaseActivityWithNet;
import com.jinanchang.jinxueyuan.base.Player;
import com.jinanchang.jinxueyuan.constant.Constant;
import com.jinanchang.jinxueyuan.entity.BaiWen;
import com.jinanchang.jinxueyuan.entity.BaiWenType;
import com.jinanchang.jinxueyuan.entity.KHCEntity;
import com.jinanchang.jinxueyuan.net.NetForJson;
import com.jinanchang.jinxueyuan.net.NetForJsonMethod;
import com.jinanchang.jinxueyuan.util.MyUtils;
import com.jinanchang.jinxueyuan.util.NetworkHelper;
import com.jinanchang.jinxueyuan.view.mylistview.LoadMoreListView;
import com.jinanchang.jinxueyuan.view.mylistview.RefreshAndLoadMoreView;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
public class BaiWenActivity extends BaseActivityWithNet<BaiWen> {
private RefreshAndLoadMoreView mRefreshAndLoadMoreActivityBaiWen;
private LoadMoreListView mLoadMoreListActivityBaiWen;
private int fromindex = 0;//开始查询的位置
private int tempIndex;//临时查询位置
private boolean isMore = false;//是否是加载更多操作
private int temp = 0;//每次获取的条数
private List<BaiWen.ResultDataBean> tempList = new ArrayList<>();//客户信息实体类集合;
private boolean isLoad = false;//是否已经加载过了
int typeid = 0;
private BaiWenAdapter mAdapter;
@Override
protected void initLocalDatas() {
mRefreshAndLoadMoreActivityBaiWen.setLoadMoreListView(mLoadMoreListActivityBaiWen);
mLoadMoreListActivityBaiWen.setRefreshAndLoadMoreView(mRefreshAndLoadMoreActivityBaiWen);
//设置下拉刷新监听
mRefreshAndLoadMoreActivityBaiWen.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
tempIndex = 0;
fromindex = 0;
initNetDatas();
}
});
//设置加载监听
mLoadMoreListActivityBaiWen.setOnLoadMoreListener(new LoadMoreListView.OnLoadMoreListener() {
@Override
public void onLoadMore() {
fromindex = tempIndex;
isMore = true;
initNetDatas();
}
});
}
@Override
protected void initNetDatas() {
// IntentFilter myIntentFilter = new IntentFilter();
// mActivitySelf.registerReceiver(mBroadcastReceiver, myIntentFilter);
try {
if (!NetworkHelper.isNetworkConnected(mActivitySelf)) {
MyUtils.HTTPErrorLog(mActivitySelf,"无法连接网络,请您检查后重试");
return;
}
isLoad = true;
if (!isMore) {
mRefreshAndLoadMoreActivityBaiWen.setRefreshing(true);
}
mNetForJson = new NetForJson(NetForJsonMethod.POST,getUrl(), mNetOverListener);
mNetForJson.setmClassEntity(BaiWen.class);
Intent intent = getIntent();
int typeid = intent.getIntExtra("typeid",0);
SharedPreferences sharedPre= getSharedPreferences("login", MODE_PRIVATE);
int userid = sharedPre.getInt("uid",0);
mNetForJson.addHeader("userid", String.valueOf(userid));
addParams("typeid", typeid);
addParams("fromindex", fromindex);
exetuceNet();
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
protected String getUrl() {
return Constant.BaiWen_List;
}
@Override
protected void onSuccess(BaiWen entity) {
try {
if ("1".equals(entity.getResult())) {
temp = entity.getResultData().size();
tempIndex += temp;
//如果不是加载更多则清空集合重新赋值
if (!isMore) {
tempList.clear();
}
for (int i = 0; i < entity.getResultData().size(); i++) {
tempList.add(entity.getResultData().get(i));
}
if (mAdapter == null) {
mAdapter=new BaiWenAdapter(tempList,mActivitySelf,1,-1);
mLoadMoreListActivityBaiWen.setAdapter(mAdapter);
} else {
mAdapter.notifyDataSetChanged();
}
//根据是否还有数据显示加载Fooder.xml的显示结果
mLoadMoreListActivityBaiWen.post(new Runnable() {
public void run() {
int firstVisiblePosition = mLoadMoreListActivityBaiWen.getFirstVisiblePosition();
int lastVisiblePosition = mLoadMoreListActivityBaiWen.getLastVisiblePosition();
if (temp < lastVisiblePosition - firstVisiblePosition + 1) {
mLoadMoreListActivityBaiWen.setHaveMoreData(false);
} else {
mLoadMoreListActivityBaiWen.setHaveMoreData(true);
}
}
});
//当加载完成之后设置此时不在刷新状态
mRefreshAndLoadMoreActivityBaiWen.setRefreshing(false);
mLoadMoreListActivityBaiWen.onLoadComplete();
//如果不是加载更多则回到第一个Item的位置
if (!isMore) {
mLoadMoreListActivityBaiWen.setSelection(mLoadMoreListActivityBaiWen.getTop());
}
isMore = false;
} else {
MyUtils.HTTPErrorLog(mActivitySelf, entity.getErrorMsg());
}
} catch (Exception e) {
MyUtils.HTTPErrorLog(mActivitySelf, e.toString());
e.printStackTrace();
}
}
@Override
protected void onError(Throwable e) {
}
@Override
protected int setRootView() {
return R.layout.activity_bai_wen;
}
@Override
protected void initViews() {
mRefreshAndLoadMoreActivityBaiWen = (RefreshAndLoadMoreView) findViewById(R.id.refresh_and_load_more_activity_baiwen);
mLoadMoreListActivityBaiWen = (LoadMoreListView) findViewById(R.id.load_more_list_activity_baiwen);
}
@Override
protected void initListener() {
setViewImgTitleLeft(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
Intent intent = getIntent();
String title = intent.getStringExtra("title");
setViewTitleCenter(title,null);
mLoadMoreListActivityBaiWen.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (MyUtils.isFastClick()){
BaiWen.ResultDataBean bean = tempList.get(position);
Intent intent = new Intent(mActivitySelf, BaiWenDetialActivity.class);
//传递实体
Bundle bundle = new Bundle();
bundle.putSerializable("baiwen", bean);
intent.putExtras(bundle);
int typeid = getIntent().getIntExtra("typeid",0);
intent.putExtra("typeid",typeid);
intent.putExtra("position",position);
intent.putExtra("page",1);
startActivity(intent);
}
}
});
}
public void registerBoradcastReceiver(){
IntentFilter myIntentFilter = new IntentFilter();
myIntentFilter.addAction("BaiWenDetialActivity1");
//注册广播
mActivitySelf.registerReceiver(mBroadcastReceiver, myIntentFilter);
}
private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals("BaiWenDetialActivity1")) {
int position = intent.getIntExtra("position",-1);
int progress = intent.getIntExtra("progress",0);
BaiWen.ResultDataBean info = tempList.get(position);
String strProgress = progress+"%";
if (progress == 100 || progress == 99)
{
strProgress = "已学完";
}
if (progress == 1 || progress == 0)
{
strProgress = "";
}
info.setProgress(strProgress);
tempList.set(position,info);
mAdapter.notifyDataSetChanged();
}
}
};
}
package com.jinanchang.jinxueyuan.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.jinanchang.jinxueyuan.R;
import com.jinanchang.jinxueyuan.base.BaseActivity;
import com.jinanchang.jinxueyuan.entity.BaiWen;
import com.jinanchang.jinxueyuan.entity.BaiWenType;
import java.util.List;
public class BaiWenAdapter extends BaseAdapter {
private Context mContext;
private List<BaiWen.ResultDataBean> mList;
private LayoutInflater mInflater;
private int mistype = 0;
private int mposition = -1;
public BaiWenAdapter(List<BaiWen.ResultDataBean> tempList,Context context,int istype,int position) {
mList = tempList;
mContext = context;
mInflater= LayoutInflater.from(context);
mistype = istype;
mposition = position;
}
@Override
public int getCount() {
return mList.size();
}
@Override
public Object getItem(int position) {
return mList.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder;
if (convertView==null) {
viewHolder=new ViewHolder();
convertView=mInflater.inflate(R.layout.item_baiwen,parent,false);
viewHolder.mBaiWenTitle = (TextView) convertView.findViewById(R.id.item_tv_baiwen_title);
viewHolder.mBaiWenTime = (TextView) convertView.findViewById(R.id.item_tv_baiwen_time);
viewHolder.mBaiWenProgress = (TextView) convertView.findViewById(R.id.item_tv_baiwen_progress);
viewHolder.mBaiWenFirst = (TextView) convertView.findViewById(R.id.item_tv_baiwen_first);
viewHolder.mBaiWenScound = (TextView) convertView.findViewById(R.id.item_tv_baiwen_scound);
convertView.setTag(viewHolder);
}else {
viewHolder= (ViewHolder) convertView.getTag();
}
BaiWen.ResultDataBean entity = mList.get(position);
if (mistype == 1)
{
viewHolder.mBaiWenFirst.setVisibility(View.GONE);
viewHolder.mBaiWenScound.setVisibility(View.GONE);
}
else
{
viewHolder.mBaiWenFirst.setText(entity.getFirstname());
viewHolder.mBaiWenScound.setText(entity.getScoundname());
}
viewHolder.mBaiWenTitle.setText(entity.getTitle().trim());
viewHolder.mBaiWenTime.setText(entity.getCreatetime());
if (position == mposition)
{
viewHolder.mBaiWenProgress.setText("正在播放");
viewHolder.mBaiWenProgress.setTextColor(viewHolder.mBaiWenProgress.getResources().getColor(R.color.yibohui));
}
else
{
viewHolder.mBaiWenProgress.setTextColor(viewHolder.mBaiWenProgress.getResources().getColor(R.color.baiwen_learn));
if (entity.getProgress() == null || entity.getProgress() == "")
{
viewHolder.mBaiWenProgress.setText("未学");
}
else
{
viewHolder.mBaiWenProgress.setText(entity.getProgress());
}
}
return convertView;
}
class ViewHolder{
private TextView mBaiWenTitle;
private TextView mBaiWenTime;
private TextView mBaiWenProgress;
private TextView mBaiWenFirst;
private TextView mBaiWenScound;
}
}
package com.jinanchang.jinxueyuan.entity;
import java.io.Serializable;
import java.util.List;
public class BaiWen {
/**
* result : 1
* errorCode : null
* errorMsg : 成功
* resultData : [{"id":151,"firstname":"区域解读","scoundname":"区域概况","title":"\t当前郑州楼市动荡期买房怎么选区域?\t","content":"\t\"9月份以来,郑州楼市降价声此起彼伏,个别区域个别项目甚至达到了40%以上,但是有三个区域的房价依旧坚挺,并且略有上涨,第一个就是北龙湖,以正商五境为代表,上涨10%,第二个是滨河新区,房价一直坚挺,并且上车门槛上涨500-1000左右,第三个是中原老城区,以万科山河道、昆仑望岳,恒大云玺,康桥玖玺园为代表,房价直逼两万左右,个别项目还一房难求。\r\n这三个区域房价坚挺,一共有两类原因,第一是北龙湖和滨河代表着郑州的发展方向,且产品具有一定的稀缺性,别墅及洋房为主,普遍限高,改善品质好。\r\n中原老城区则是中优城市战略的持续推进,老城区焕发了新春,再加上完善的生活配套,保值能力强。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":145,"firstname":"区域解读","scoundname":"区域概况","title":"\t郑州区域是如何划分的?\t","content":"\t\"1.郑州主要是依托于交通干线及沿线的城镇,构建一主一城三区四组团的城镇布局结构。\r\n2.一主指的是主城区,即金水区、郑东新区、经开区、管城区、二七区、中原区、高新区、惠济区。\r\n3.一城指的是航空城及航空港。\r\n4.三区指的是东部新城区,西部新城区和南部新城区。\r\n5.四组团指的是新郑、新密、登封、巩义四个外围组团。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":141,"firstname":"区域解读","scoundname":"区域概况","title":"\t郑州有哪些地方是不限购的呢?\t","content":"\t目前郑州的非限购区只有4个,分别是:上街区、登封市、新密市和巩义市。 \t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":137,"firstname":"区域解读","scoundname":"区域概况","title":"\t郑东新区区目前的市场行情和房价走势怎么样?\t","content":"\t\"1、CBD和高铁片区基本无新房在售,二手房均价在25000+,高铁东广场在建公寓产品,均价12000左右;\r\n2、龙子湖片区住宅用地较少,目前仅剩蓝宝的三个楼盘在售,均价16500-18000左右,且后续没有住宅用地;\r\n3、北龙湖是郑州房地产市场的天花板,均价40000起,最高13万/平;\r\n4、白沙象湖因为定位高端,虽然有小幅下跌,但也算坚挺,高层均价13000-16000,洋房18000-20000左右;\r\n整体来看,郑东新区凭借其城市定位和多年的发展,再加上稀缺的土地供应,在未来几年乃至更长的一段时间,房价依然会稳步上升。\r\n但同时也应看到,随着滨河国际新城、常西湖新区、双湖科技城等一批优质新区的建设落地,郑东新区在高端城市核心定位方面也会受到不小影响,虽然趋势仍旧以上涨为主,但大幅度的增长和升值,显然已经不太可能。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":135,"firstname":"区域解读","scoundname":"区域概况","title":"\t惠济区的环境怎么样?\t","content":"\t惠济区是郑州传统的四大低密度板块之一,具有距省会城市最近的自然山体\u2014\u2014邙山,临黄河,有黄河湿地公园、黄河文化公园、索须河沿河湿地,中原影视城等知名景点,山、水、城、林交相辉映;全区600万株树木、6.4万亩有林面积,构成了\u201c人在林中走、车在绿中行\u201d的天然大森林、 大氧吧和省会的\u201c绿肺\u201d,环境宜人。\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":134,"firstname":"区域解读","scoundname":"区域概况","title":"\t惠济区目前的市场行情和房价走势怎么样?\t","content":"\t\"1、生态宜居是惠济区的住宅基调,具体到房型上,多以三房、四房为主,主要目标人群以地缘性客户及改善类客户为主。\r\n2、整体而言,价格在1.2万~1.5万,价格有着明显的方位差异,靠近金水、东区的楼盘价格相对较贵。\r\n3、惠济区今年的房价整体来看稳中有升,较为坚挺。6月份均价环比增长0.73%,高于郑州整体房价涨幅。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":132,"firstname":"区域解读","scoundname":"区域概况","title":"\t二七区目前的市场行情和房价走势怎么样?\t","content":"\t\"1、从价格上看:目前新房集中在南三环南四环之间;三环内新房楼盘分布均匀,均价在1.45万左右;三环外沿主干道分布,均价1.3万左右;\r\n2、从类型上看:三环内多住宅楼盘,三环至四环之间沿主干道分布部分公寓项目,客户主要以地缘性刚需客户和投资客户为主。\r\n房价走势:二七区房价从去年11月份均价13192元/平方米到今年6月份均价13497元/平方米,价格呈现一路小幅度上涨趋势,涨幅为0.11%,今年3月份至今房价趋于平稳。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":125,"firstname":"区域解读","scoundname":"区域概况","title":"\t经开区目前的市场行情和房价走势怎么样?\t","content":"\t\"1、老城区区域成熟,开发度高,房价整体处于高位,无明显上下浮动\r\n2、新房价格方面,整体上均价在19000~20000。保利天汇价格在19000-20000之间,华润置地凯旋门在19500左右。\r\n3、去化方面,两个项目的开盘去化均在60%左右,还是比较受市场欢迎的\r\n4、滨河价格起步较高,去年到今年整体变化不大,整体价格在15000~25000,个别楼盘二期有减配降价,比如金辉和电建。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":120,"firstname":"区域解读","scoundname":"区域概况","title":"\t金水区目前的市场行情和房价走势怎么样?\t","content":"\t\"1、金水区4月份成交1667套,5月份成交了1785套,6月份成交了1742套。近三月成交相对稳定。\r\n2、金水区5月成交均价为16815元/平方米,对比去年11月成交均价16463元/平方米来说,近半年价格方面也比较稳定。\r\n整体市场行情和房价走势都比较稳定,即使有疫情的影响,但在未来一段时间内,金水区的房价应该会维持在一个稳中略涨的状态,但幅度不会太大。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":117,"firstname":"区域解读","scoundname":"区域概况","title":"\t中原区目前的市场行情和房价走势怎么样?\t","content":"\t\"1、目前中原区的市场比较平稳,均价基本处于1.4-1.5万之间;\r\n2、西三环内老城区房源较少,价格在1.7万-1.9万左右,分别是康桥玖玺园、万科山河道;\r\n3、目前中原区的在售房源都集中于常西湖新区(西三环、西四环之间),作为未来市政府的所在地,对进驻的开发商门槛有着较高标准,因此区域内都为品质楼盘,价格在1万5左右,作为对标郑东CBD的郑西发展核心区域,未来的升值潜力不可限量,对于投资考虑的客户群体而言,是一个值得考虑的区域。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":116,"firstname":"区域解读","scoundname":"区域概况","title":"\t高新区有学区房吗?教学质量怎么样?\t","content":"\t\"1、高新区是围绕高产高教的来发展的,对现在来说,学区房是保值项。高新区的学区房性价比很高,教育资源很优质,枫杨外国语,郑州一中,省实验等学校在区域内分布,百分之90的人还是比较注重孩子的教育的。那么目前区域内比较好的学区房是:东原阅城,福晟谦祥钱隆城。\r\n2、其中东原阅城是高新区排名第一学区房,项目主打社区运营,童乐童享的亲子教育,在去年就确定跟河南省省实验是有签约的,教育资源和师资力量都是有保障的。明年就开始招生了。价格较低在13000左右。\r\n3、其次是福晟谦祥钱隆城,位于高新老城区的门户位置,楼下就是高新区万达,预计今年9月份开业,周边就是华师大的小学和中学,从商业和学区学区都是顶尖的,整个地块是挨着科学大道,无论做公共交通还是自驾都是很方便的。价格在13700左右。\r\n4.两个学区房都很优质,最终还要根据您的需求,选择更合适的房子。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":113,"firstname":"区域解读","scoundname":"区域概况","title":"\t高新区目前的市场行情和房价走势怎么样?\t","content":"\t\"高新区目前整体以刚需客户为主,因此无论是成交量还是房价都比较稳定,疫情并没有引起高新区房价大的波动,据6月份的成交量来看,高新区成交量高达2438套,排名全市前三。\r\n1、高新老城区在售楼盘居多,刚需/刚改为主,均价在15000左右。\r\n2、高新新城区目前在售楼盘较少,由于配套的欠缺,大部分均价都在12000左右。随着后期规划的落地,房价也会随之走高。\r\n整体来看,高新区主要以产业园为主,高新技术人才聚集带来的人口红利,势必会带来高新区新一轮的房价的上涨。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":109,"firstname":"区域解读","scoundname":"区域概况","title":"\t郑州现在哪个区比较适合刚需?\t","content":"\t\"刚需自住为首要条件,重点要性价比高,配套全、临地铁、有学校。\r\n从整个区域来看,郑东新区作为全市房价的天花板,北部区域做为老城中心区,价格固定且偏高,因此从刚需来考虑,西部的高新区与南部的管城区都是比较适合刚需群体的区域。\r\n\r\n1、高新区位于郑州西北部,高新产业聚集,以IT和审计行业,所以对客群划分比较明显。西三环、西四环、绕城高速、科学大道三纵一横,地铁一号线贯通东西,通勤方便;此外区内有省内唯一211院校--郑大,郑州外国语,枫扬外国语等优质学校,教育资源实力雄厚。\r\n2、管城区北临金水、西临二七、东连郑东、南面龙湖、港区,得天独厚地理位置,齐全的交通方式让通勤十分便捷;由于发展起步较晚,目前作为价值洼地性价比高;对刚需群体而言有着极强的吸引力,所谓\u201c郑州刚需看管南\u201d\r\n\r\n3、除了上述两大推荐区域外,如果标准放宽,东部的白沙片区,西部的中原新区,高新新城;西南部的二七新区,北边的惠济区北部区域也都是值得一看的刚需选择。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":108,"firstname":"区域解读","scoundname":"区域概况","title":"\t郑州现在哪个区比较适合改善?\t","content":"\t\"对于改善人群而言,更加看中配套和生活环境的品质,根据目前郑州的发展情况,以下几个区域都是不错的选择:\r\n1、东部:白沙、绿博作为未来省政府所在地,受政策的影响,在绿化及基础设施建设方面都可以说是顶尖配备;杨金片区离北龙湖一路之隔,能够分享北龙湖的改善配套,也是不错的选择;\r\n2、西部:常西湖新区不仅是未来市政府驻地,同样也是郑州未来的CCD(中央文化区),高端居住定位,文娱商业氛围浓厚,同样也是改善的理想选择。\r\n3、南部:滨河国际新城区域内绿化达到56%,1400亩超大水域;而且是政府主导,央企操刀,先规划,后建设,是郑州除北龙湖外的唯一纯改善区域;品质房企入驻,住宅的居住体验有品质保障;但不少规划落地尚需时日;\r\n4、北部:惠济区作为郑州后花圈,生态宜居一直以来都是该区域的核心竞争力所在,临黄河,靠邙山,环境质量位居郑州之首,但在生活配套及交通方面有所欠缺。\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"},{"id":107,"firstname":"区域解读","scoundname":"区域概况","title":"\t郑州哪个区的发展潜力最大?\t","content":"\t\"无论哪个去的发展,都要从属与郑州的整体发展态势,我先给您分析一下目前郑州的一个大致情况\r\n\r\n1、疫情进入收尾阶段,整体市场在逐步回暖\r\n2、疫情导致大学生回流 80~90万的人口流入 刚需基数广大\r\n3、郑州的房地产市场贡献了30%的GDP,与政府政绩绑定紧密\r\n4、郑东房价已趋近高位,最佳的投资购置时机已经过了\r\n\r\n综合分析之后,我推荐你重点关注以下两个区域\r\n常西湖新区:\r\n1、作为未来市政府驻地,政治主导经济,前景不言而喻的\r\n2、疏导老城区压力,承接老城区人口及功能,平衡东西发展\r\n3、四大中心:奥体中心、文博艺术中心、市民活动中心、现代传媒中心,新地标\r\n4、定位高端:常西湖新区作为CCD(中央文化区),提供的是代表未来城市发展的高端生态科技居住理念,随着城市发展的步伐,其价值也随之提升。\r\n5、品牌开发商云集,区域价值肯定,房产升值基石保障\r\n5、升值潜力:2015年至今,年房价增长率11.6~16.2% (均价从7000左右涨至12500左右) \r\n\r\n滨河新区价值点:\r\n1、唯一的 \u201c国际化\u201d新区:郑州9个新区,只有滨河是国际新城;\r\n2、核心腹地:连接CBD和航空港区的枢纽,兼得二者发展红利,是经开区的核心发展板块,潜力巨大\r\n3、中原自贸区龙头:郑欧班列、国际陆港,国家级跨境电商服务试点\r\n4、政策主导:郑州除北龙湖之外,唯一一个由政府同意规划建设的纯改善区域,;\r\n5、河南首个海绵城市、智慧城市;城市基础建设及设计理念领先老区一个时代;\r\n6、升值潜力:楼面地价从2015年1000元每平飙升至目前10000+;房价由7000元冲破25000元大关\r\n现在看滨河、常西湖就像十多年前看郑东,如果曾经错过了郑东,今天不应该错过滨河、常西湖。\r\n注意:疫情导致200余家开发商难以为继,小开发倒闭破产比比皆是,在关注发展潜力的同时,一定要注意选择大开发商\"\t","luyinurl":null,"progress":null,"createtime":"2021/1/20 15:23:13"}]
*/
private String result;
private Object errorCode;
private String errorMsg;
private List<ResultDataBean> resultData;
public String getResult() {
return result;
}
public void setResult(String result) {
this.result = result;
}
public Object getErrorCode() {
return errorCode;
}
public void setErrorCode(Object errorCode) {
this.errorCode = errorCode;
}
public String getErrorMsg() {
return errorMsg;
}
public void setErrorMsg(String errorMsg) {
this.errorMsg = errorMsg;
}
public List<ResultDataBean> getResultData() {
return resultData;
}
public void setResultData(List<ResultDataBean> resultData) {
this.resultData = resultData;
}
public static class ResultDataBean implements Serializable {
/**
* id : 151
* firstname : 区域解读
* scoundname : 区域概况
* title : 当前郑州楼市动荡期买房怎么选区域?
* content : "9月份以来,郑州楼市降价声此起彼伏,个别区域个别项目甚至达到了40%以上,但是有三个区域的房价依旧坚挺,并且略有上涨,第一个就是北龙湖,以正商五境为代表,上涨10%,第二个是滨河新区,房价一直坚挺,并且上车门槛上涨500-1000左右,第三个是中原老城区,以万科山河道、昆仑望岳,恒大云玺,康桥玖玺园为代表,房价直逼两万左右,个别项目还一房难求。
这三个区域房价坚挺,一共有两类原因,第一是北龙湖和滨河代表着郑州的发展方向,且产品具有一定的稀缺性,别墅及洋房为主,普遍限高,改善品质好。
中原老城区则是中优城市战略的持续推进,老城区焕发了新春,再加上完善的生活配套,保值能力强。"
* luyinurl : null
* progress : null
* createtime : 2021/1/20 15:23:13
*/
private int id;
private String firstname;
private String scoundname;
private String title;
private String content;
private String luyinurl;
private String progress;
private String createtime;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
public String getScoundname() {
return scoundname;
}
public void setScoundname(String scoundname) {
this.scoundname = scoundname;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getLuyinurl() {
return luyinurl;
}
public void setLuyinurl(String luyinurl) {
this.luyinurl = luyinurl;
}
public String getProgress() {
return progress;
}
public void setProgress(String progress) {
this.progress = progress;
}
public String getCreatetime() {
return createtime;
}
public void setCreatetime(String createtime) {
this.createtime = createtime;
}
}
}
package com.jinanchang.jinxueyuan.view.mylistview;
/**
* Created by Administrator on 2018/3/13.
*/
import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.AbsListView;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.ProgressBar;
import android.widget.TextView;
import com.jinanchang.jinxueyuan.R;
import com.jinanchang.jinxueyuan.activity.BaiWenActivity;
/**
* 项目名称:SwipeRefreshLayoutDome
* 类描述:配合RefreshAndLoadMoreView 完成下拉刷新、滑到底部自动加载更多
* 创建人:xiaolijuan
* 创建时间:2015/12/12 9:02
*/
public class LoadMoreListView extends ListView implements AbsListView.OnScrollListener {
private final int footViewHeight;
private View rooterView;
private boolean isHaveMoreData = true;// 是否有更多数据(默认为有)
private ProgressBar progressBar;
private TextView tipContext;
private RefreshAndLoadMoreView mRefreshAndLoadMoreView;
private boolean isLoading = false;// 是否正在加载
private OnLoadMoreListener mOnLoadMoreListener;
private LinearLayout llBg;
public LoadMoreListView(Context context, AttributeSet attrs) {
super(context, attrs);
//动态载入底部布局
rooterView = LayoutInflater.from(context).inflate(
R.layout.pull_to_load_footer, null);
progressBar = (ProgressBar) rooterView.findViewById(R.id.footer_progressbar);
tipContext = (TextView) rooterView.findViewById(R.id.footer_hint_textview);
llBg = (LinearLayout) rooterView.findViewById(R.id.ll_bg);
//向listView的底部添加布局(此时当给listView设置Item点击事件的时候,默认不触发这个添加的布局的点击事件)
//测量footview的高度
rooterView.measure(0,0);
//拿到高度
footViewHeight=rooterView.getMeasuredHeight();
//隐藏view
rooterView.setPadding(0,-footViewHeight,0,0);
addFooterView(rooterView, null, false);
setOnScrollListener(this);
}
public void gongRooterView(){
//隐藏view
rooterView.setPadding(0,-footViewHeight,0,0);
}
public void setRefreshAndLoadMoreView(RefreshAndLoadMoreView mRefreshAndLoadMoreView) {
this.mRefreshAndLoadMoreView = mRefreshAndLoadMoreView;
}
/**
* 设置是否还有更多数据
*
* @param isHaveMoreData
*/
public void setHaveMoreData(boolean isHaveMoreData) {
this.isHaveMoreData = isHaveMoreData;
if (!isHaveMoreData) {
rooterView.setPadding(0,0,0,0);
tipContext.setText("对不起,没有更多数据了...");
progressBar.setVisibility(View.GONE);
} else if (getLastVisiblePosition() == getCount() - 1){
rooterView.setPadding(0,0,0,0);
tipContext.setText("对不起,没有更多数据了...");
progressBar.setVisibility(View.GONE);
}else {
tipContext.setText("正在加载");
progressBar.setVisibility(View.VISIBLE);
}
}
/**
* 加载完成
*/
public void onLoadComplete() {
isLoading = false;
}
public boolean isLoading() {
return isLoading;
}
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
if (view.getLastVisiblePosition() == view.getCount() - 1 && (mRefreshAndLoadMoreView != null &&
!mRefreshAndLoadMoreView.isRefreshing()) && !isLoading && mOnLoadMoreListener != null && isHaveMoreData) {
isLoading = true;
rooterView.setPadding(0,0,0,0);
mOnLoadMoreListener.onLoadMore();
}
}
}
public void setFooterViewBackgroundColor(int color){
if (llBg!=null){
llBg.setBackgroundColor(color);
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
}
/**
* 加载更多的监听
*/
public static interface OnLoadMoreListener {
public void onLoadMore();
}
/**
* 设置加载监听
*
* @param mOnLoadMoreListener
*/
public void setOnLoadMoreListener(OnLoadMoreListener mOnLoadMoreListener) {
this.mOnLoadMoreListener = mOnLoadMoreListener;
}
}
package com.jinanchang.jinxueyuan.view.mylistview;
/**
* Created by Administrator on 2018/3/13.
*/
import android.content.Context;
import android.content.res.Resources;
import android.util.AttributeSet;
import android.view.MotionEvent;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.jinanchang.jinxueyuan.R;
/**
* 项目名称:SwipeRefreshLayoutDome
* 类描述:配合LoadMoreListView 完成下拉刷新、滑到底部自动加载更多
* 创建人:xiaolijuan
* 创建时间:2015/12/12 9:00
*/
public class RefreshAndLoadMoreView extends SwipeRefreshLayout {
private LoadMoreListView mLoadMoreListView;
/**
* 构造方法,用于在布局文件中用到这个自定义SwipeRefreshLayout控件
* @param context
* @param attrs
*
*/
public RefreshAndLoadMoreView(Context context, AttributeSet attrs) {
super(context, attrs);
Resources res = getResources();
//通过颜色资源文件设置进度动画的颜色资源
// setColorSchemeColors(res.getColor(R.color.refresh_color_1),
// res.getColor(R.color.refresh_color_2),
// res.getColor(R.color.refresh_color_3),
// res.getColor(R.color.refresh_color_4));
}
public void setLoadMoreListView(LoadMoreListView mLoadMoreListView) {
this.mLoadMoreListView = mLoadMoreListView;
}
/**
* 触屏事件,如果ListView不为空且数据还在加载中,则继续加载直至完成加载才触摸此事件
* @param ev
* @return
*/
@Override
public boolean onTouchEvent(MotionEvent ev) {
if (mLoadMoreListView != null && mLoadMoreListView.isLoading()) {
return false;
}
return super.onTouchEvent(ev);
}
private int mDownX = 0;
private int mDownY = 0;
//重写onInterceptTouchEvent方法对事件进行拦截
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
super.onInterceptTouchEvent(ev);
boolean intercepted = false;
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
intercepted = false;
//记录下点击的位置
mDownX = (int) ev.getX();
mDownY = (int) ev.getY();
// if (mAdapter != null){
// if (mAdapter.mLastMenu != null && mAdapter.mLastMenu.isOpen()) {
// mAdapter.mLastMenu.closeMenu();
// }
// }
break;
case MotionEvent.ACTION_MOVE:
int currX = (int) ev.getX();
int currY = (int) ev.getY();
int dx = currX - mDownX;
int dy = currY - mDownY;
//拦截条件:
//1.下拉
//2.垂直距离差大于水平距离差
if (dy > 0 && (dy > Math.abs(dx))) {
//此时还要根据父类的处理结果来决定事件拦不拦截
//因为当ListView已经往下滑动过后,不应该对事件进行拦截,否则ListView不能往上滑动
intercepted = super.onInterceptTouchEvent(ev);
// this.setEnabled(true);
} else {
intercepted = false;
this.setEnabled(true);
}
break;
case MotionEvent.ACTION_UP:
intercepted = false;
this.setEnabled(true);
break;
default:
break;
}
return intercepted;
}
}