手机上运行酷欧天气,显示加载失败? [问题点数:20分,结帖人bigtree_mfc]

一键查看最优答案

确认一键查看最优答案?
本功能为VIP专享,开通VIP获取答案速率将提升10倍哦!
Bbs2
本版专家分:422
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
结帖率 99.14%
Bbs1
本版专家分:93
Bbs2
本版专家分:422
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Bbs2
本版专家分:422
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Bbs2
本版专家分:422
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Bbs2
本版专家分:210
Bbs2
本版专家分:422
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Bbs2
本版专家分:422
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Bbs2
本版专家分:210
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Blank
GitHub 绑定GitHub第三方账户获取
Bbs1
本版专家分:0
Bbs1
本版专家分:0
天气---第一,二阶段总结
一.项目一般有如下几个包: 1.db: 用来存放数据库模型相关的代码。 2.gson: 用来存放GSON 模型相关的代码。 3.service: 用来存放服务相关的代码。 4.util : 用来存放工具相关的代码。 5.fragment : 用来存放碎片相关的代码。 二. 添加各种依赖库。 如下: compile 'org.litepal.android:core:1.4.1' ...
天气app
该源码是根据郭神的《第一行代码 第二版》写出来的 可以查询国内各地的<em>天气</em>预报信息而且还有几个不错的功能 UI界面也用到了Material Design
最近在看郭霖的第一行代码,写天气时,发现书上给的中国天气网提供的省市县api失效
最近在看郭霖的第一行代码,写<em>酷</em><em>欧</em><em>天气</em>时,发现书上给的中国<em>天气</em>网提供的省市县api失效,请问新的省市县的api地址多少啊?或者有更好的API借口,求大神提供,感激不尽!
天气项目,追加定位功能
1.罗列全国各省,市,县; 2.可以查看全国各城市<em>天气</em> 3.自由切换城市,随意查看 4.提供手动更新,以及后台更新<em>天气</em>的功能。 5.定位出自己所在位置 主要用拥有的界面有这些: 由于需要定位,这里我使用的是百度的SDK,需要在百度开发者平台注册,下载下来的文档我放在了公众号里 ,在公众号中回复定位SDK即可! 文档包括这几项: 要将.jar文件复制到androidstudio的libs目录下...
天气源码
我知道看《第一行代码入行》的朋友一定很多,而最后一章的练手应用<em>酷</em><em>欧</em><em>天气</em>想必看完这本书的人都写过,所以我提供一个用eclipse写的<em>酷</em>派<em>天气</em>,供大家学习,
《第一行代码》天气开发中三个问题求解答
问题1,如何复制.git这个隐藏目录![图片说明](https://img-ask.csdn.net/upload/201601/08/1452227647_216270.png) 问题2,为何git push origin master会出现一系列错误![图片说明](https://img-ask.csdn.net/upload/201601/08/1452227687_559573.png) 问题3,为何我在com.coolweather.app下创建不了包,会提示package already exsists,说明只能在src目录下创建,这和书中说的不一样![图片说明](https://img-ask.csdn.net/upload/201601/08/1452227757_143706.png)
关于天气加载不出省份数据!!!
修改Gradle中的SDK版本 将28改为26即可 android { compileSdkVersion 26 defaultConfig { applicationId “com.example.weather” minSdkVersion 15 targetSdkVersion 26 dependencies { implementation fileTree(dir: ‘libs’, in...
《第一行代码》14章-开发天气(4)
四、手动更新<em>天气</em>和切换城市 1、手动更新<em>天气</em> 使用下拉刷新的方法 (1)修改activity_weather.xml ...... &lt;!--下拉刷新--&gt; &lt;android.support.v4.widget.SwipeRefreshLayout android:id="@+id/swipe_refresh" android:layout_wi...
第一行代码天气开发(四)
首先来创建布局文件,布局文件的控件就要根据服务器返回的<em>天气</em>数据来决定了
第一行代码天气开发详细总结
首先声明一下,本人目前也是菜鸟一名,最近几天把郭神的第一行代码的那个实战项目学着做了一遍,也学到了不少东西,涉及的知识还是蛮丰富的,感觉自己的水平也有了点提高,至少我三个月前跟着第一行代码开发的时候还好是蛮多看不懂的,现在自学android开发已经快五个月了,不上课的时间有时间就学学,一路滚爬过来,终于把这个项目自己看懂了,代码也自己敲出来实现了一遍,酸甜苦辣自在心中,还记得曾经有几个地方的bug
开发天气debug虐心后的心得
开发<em>酷</em><em>欧</em><em>天气</em>debug虐心后的心得 经过一段时间的《第一行代码》学习,终于做到了最后的项目开发阶段。可是过程却不像我想象中的简单。debug过程中最痛苦的不是有错误,而是编译成功后满怀期待的打开app后的事与愿违,并不是自己期待的结果。           具体情况如下:           1.第二阶段的开发中把程序在<em>手机</em>上调试时并没有像书上写的那样出来城市列表,而是只出现了一个bar
Android实战:CoolWeather天气(加强版数据接口)代码详解(下)
接上篇文章(http://blog.csdn.net/MaybeForever/article/details/78497806)继续,完整文件请从我的GitHub中Fork。目录(下)目录下 四<em>显示</em><em>天气</em>信息 五手动更新<em>天气</em>和切换城市 六后台自动更新<em>天气</em> 七修改图标和名称
基于Android Studio的简易天气APP项目开发
一、功能需求 1、罗列全国的省、市、县 2、查看全国任意城市的<em>天气</em>情况 3、自由切换城市,查看异地城市的<em>天气</em>情况 4、手动更新与后台自动更新<em>天气</em>的功能 二、可行性分析: 1、需要用到的技术有:UI、网络、数据存储、服务 2、<em>天气</em>信息来源:和风<em>天气</em>,有3000+次/天免费数据获取 3、架设服务器用于提供全国的省市县的数据信息 三、全国地区信息获取 1、访问 http://guolin.tec...
《安卓第一行代码》——coolweather,照着代码敲加载失败(打开白屏)的原因
百度了好多都说是接口不行了什么的,还自己去和风<em>天气</em>拿json数据自己解析,发现那岂不是后面的代码都不能照着敲了?要改的地方好多,万幸debug的时候找到了问题的真正所在。 Android P http网络请求的问题 Google表示,为保证用户数据和设备的安全,针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App...
《第一行代码》的天气,点开省列表以后显示的还是省,而不是城市,这是再点一下省就直接闪退
Logcat如下 FATAL EXCEPTION: main Process: com.coolweather.android, PID: 11807 java.lang.IndexOutOfBoundsException: Index: 6, Size: 0 at java.util.ArrayList.get(ArrayList.java:411) at com.coolweather.android.ChooseAreaFragment$1.onItemClick(ChooseAreaFragment.java:76) at android.widget.AdapterView.performItemClick(AdapterView.java:310) at android.widget.AbsListView.performItemClick(AbsListView.java:1165) at android.widget.AbsListView$PerformClick.run(AbsListView.java:3137) at android.widget.AbsListView$3.run(AbsListView.java:4052) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6290) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 代码如下 package com.coolweather.android; import android.app.ProgressDialog; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import com.coolweather.android.db.City; import com.coolweather.android.db.County; import com.coolweather.android.db.Province; import com.coolweather.android.util.HttpUtil; import com.coolweather.android.util.Utility; import org.litepal.crud.DataSupport; import java.io.IOException; import java.util.ArrayList; import java.util.List; import okhttp3.Call; import okhttp3.Callback; import okhttp3.Response; /** * Created by 王耀祖 on 2017/7/20. */ public class ChooseAreaFragment extends Fragment { public static final int LEVEL_PROVINCE = 0; public static final int LEVEL_CITY = 1; public static final int LEVEL_COUNTY = 2; private ProgressDialog progressDialog; private TextView titleText; private Button backButton; private ListView listView; private ArrayAdapter adapter; private List dataList = new ArrayList<>(); private List provinceList; private List cityList; private List countyList; private Province selectedProvince; private City selectedCity; private int currentLevel; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.choose_area, container, false); titleText = (TextView) view.findViewById(R.id.title_text); backButton = (Button) view.findViewById(R.id.back_button); listView = (ListView) view.findViewById(R.id.list_view); adapter = new ArrayAdapter(getContext(), android.R.layout.simple_list_item_1, dataList); listView.setAdapter(adapter); return view; } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { if (currentLevel == LEVEL_PROVINCE) { selectedProvince = provinceList.get(position); queryCities(); } else if (currentLevel == LEVEL_CITY) { selectedCity = cityList.get(position); queryCounties(); } } }); backButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if(currentLevel==LEVEL_COUNTY){ queryCities(); } else if(currentLevel==LEVEL_CITY){ queryProvinces(); } } }); queryProvinces(); } private void queryProvinces(){ titleText.setText("中国"); backButton.setVisibility(View.GONE); provinceList= DataSupport.findAll(Province.class); if(provinceList.size()>0){ dataList.clear(); for(Province province:provinceList) dataList.add(province.getProvinceName()); adapter.notifyDataSetChanged(); listView.setSelection(0); currentLevel=LEVEL_PROVINCE; } else{ String address="http://guolin.tech/api/china"; queryFromServer(address,"province"); } } private void queryCities(){ titleText.setText(selectedProvince.getProvinceName()); backButton.setVisibility(View.VISIBLE); cityList=DataSupport.where("provinceid = ?",String.valueOf(selectedProvince .getId())).find(City.class); if(cityList.size()>0) { cityList.clear(); for(City city:cityList) dataList.add(city.getCityName()); adapter.notifyDataSetChanged(); listView.setSelection(0); currentLevel=LEVEL_CITY; } else{ int provinceCode=selectedProvince.getProvinceCode(); String address="http://guolin.tech/api/china/"+provinceCode; queryFromServer(address,"city"); } } private void queryCounties(){ titleText.setText(selectedCity.getCityName()); backButton.setVisibility(View.VISIBLE); countyList=DataSupport.where("cityid = ?",String.valueOf(selectedCity .getId())).find(County.class); if(countyList.size()>0) { countyList.clear(); for(County county:countyList) dataList.add(county.getCountyName()); adapter.notifyDataSetChanged(); listView.setSelection(0); currentLevel=LEVEL_COUNTY; } else{ int provinceCode=selectedProvince.getProvinceCode(); int cityCode=selectedCity.getCityCode(); String address="http://guolin.tech/api/china/"+provinceCode+"/"+cityCode; queryFromServer(address,"county"); } } private void queryFromServer(String address,final String type){ showProgressDialog(); HttpUtil.sendOkHttpRequest(address, new Callback() { @Override public void onFailure(Call call, IOException e) { getActivity().runOnUiThread(new Runnable() { @Override public void run() { closeProgressDialog(); Toast.makeText(getContext(), "<em>加载</em><em>失败</em>", Toast.LENGTH_SHORT).show(); } }); } @Override public void onResponse(Call call, Response response) throws IOException { String responseText=response.body().string(); boolean result=false; if("province".equals(type)) result= Utility.handleProvinceResponse(responseText); else if("city".equals(type)) result=Utility.handleCityResponse(responseText,selectedProvince.getId()); else if("county".equals(type)) result=Utility.handleCountyResponse(responseText,selectedCity.getId()); if(result){ getActivity().runOnUiThread(new Runnable() { @Override public void run() { closeProgressDialog(); if("province".equals(type)) queryProvinces(); else if("city".equals(type)) queryCities(); else if("county".equals(type)) queryCounties(); } }); } } }); } private void showProgressDialog(){ if(progressDialog==null){ progressDialog=new ProgressDialog(getActivity()); progressDialog.setMessage("正在<em>加载</em>。。。"); progressDialog.setCanceledOnTouchOutside(false); } progressDialog.show(); } private void closeProgressDialog(){ if(progressDialog!=null) progressDialog.dismiss(); } }
编写Android第一行代码的时候,到实战天气的时候出了一些Bug,打印的日志如下:
03-01 00:16:15.765 17880-17880/com.example.lab.android.nuc.coolweather E/AndroidRuntime: FATAL EXCEP
天气学习笔记二(获取全国省市县数据)
连接到服务器获取数据 在这里我给出两种方法 方法(1) 新建接口HttpCallbackListener,用于回调。 代码如下 public interface HttpCallbackListener { void onFinish(String response); void onError(Exception e); } 新建类HttpUtil用于和服务器进行数据交互 im...
按照第一行代码上打天气提示我 Value Request of type java.lang.String cannot be converte
12-28 19:54:35.763 7686-8889/com.example.administrator.kuou W/System.err: org.json.JSONException: Value Request of type java.lang.String cannot be converted to JSONObject 12-28 19:54:35.763 7686-8889/com.example.administrator.kuou W/System.err: at org.json.JSON.typeMismatch(JSON.java:111) 12-28 19:54:35.763 7686-8889/com.example.administrator.kuou W/System.err: at org.json.JSONObject.(JSONObject.java:160) 12-28 19:54:35.763 7686-8889/com.example.administrator.kuou W/System.err: at org.json.JSONObject.(JSONObject.java:173) 12-28 19:54:35.763 7686-8889/com.example.administrator.kuou W/System.err: at com.example.administrator.kuou.util.Utility.handleWeatherResponse(Utility.java:125) 12-28 19:54:35.764 7686-8889/com.example.administrator.kuou W/System.err: at com.example.administrator.kuou.WeatherActivity$1.onResponse(WeatherActivity.java:91) 12-28 19:54:35.764 7686-8889/com.example.administrator.kuou W/System.err: at okhttp3.RealCall$AsyncCall.execute(RealCall.java:126) 12-28 19:54:35.764 7686-8889/com.example.administrator.kuou W/System.err: at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32) 12-28 19:54:35.764 7686-8889/com.example.administrator.kuou W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 12-28 19:54:35.764 7686-8889/com.example.administrator.kuou W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 12-28 19:54:35.764 7686-8889/com.example.administrator.kuou W/System.err: at java.lang.Thread.run(Thread.java:760) 12-28 19:54:35.764 7686-7686/com.example.administrator.kuou D/TAG: run: null 12-28 19:54:35.782 7686-7686/com.example.administrator.kuou I/Toast: Show toast from OpPackageName:com.example.administrator.kuou, PackageName:com.example.administrator.kuou ``` ```public static Weather handleWeatherResponse(String response) { try { // 将整个json实例化保存在jsonObject中 JSONObject jsonObject = new JSONObject(response); // 从jsonObject中取出键为"HeWeather"的数据,并保存在数组中 JSONArray jsonArray = jsonObject.getJSONArray("Weather"); // 取出数组中的第一项,并以字符串形式保存 String weatherContent = jsonArray.getJSONObject(0).toString(); // 返回通过Gson解析后的Weather对象 return new Gson().fromJson(weatherContent, Weather.class); } catch (JSONException e) { e.printStackTrace(); } return null; }
第一行代码天气APP开发(一)
项目图:   1.需求功能 1)罗列出全国所有的省/市/县 2)可以查看全国任意城市的<em>天气</em>信息 3)可以自由切换城市,查看其它城市的<em>天气</em> 4)可以手动更新<em>天气</em>和后台自动更<em>天气</em> 2.需要的技术 UI界面,网络请求,数据库操作,后台服务等 2.1原型图 3.数据准备 1)<em>天气</em>接口信息 a.使用阿里的付费版接口,0.01元调用10000次 b.和风<em>天气</em>,免费用h...
Android项目源码第一行代码天气更新版
本项目是《第一行代码入行》这本书的最后一章的练手应用<em>酷</em><em>欧</em><em>天气</em>,原来的应用中使用的中国<em>天气</em>网的API早已失效 ,现在这个项目更改了api为和风<em>天气</em>修复了<em>天气</em>不能<em>显示</em>的问题,不过城市选择貌似有点bug,有
天气
之前到了2级列表下面在选择城市到县就一直<em>显示</em><em>加载</em>中…,后来发现问题是游标对象方法用错了,目前第二阶段收工。 完成了。
天气bug
源码地址本文出自EzraZhao,转载请注明出处。本篇文章只适合刚入门菜鸟,大神级请绕道,谢谢。废话不多说,相信大家有不少人都在学习或者学过郭霖郭大神的第一行代码,本人在学习第二版时,在制作<em>酷</em><em>欧</em><em>天气</em>中发现一个小bug,不知道大家有没有发现。在你启动郭神的应用后,现在假如已经<em>加载</em>了一个城市的<em>天气</em>信息,然后你进行切换城市操作,然后进行刷新操作,哎,你会发现城市竟然又切回了启动时的城市<em>天气</em>,而且不管你切换
CoolWeather天气---第三,四,五 阶段总结
1. 总结LitePal 数据库 数据库 LitePal 是安卓中最方便的数据库, 另外,LitePal 中的每一个实体都 必须 要继承自 DataSupport 类。 LitePal 在使用的时候 必须要配置 litepal.xml 文件, 再配置一下 LitePalApplication . 配置好之后,数据库和表 会在首次执行任意数据库操作的时候 自...
Android学习(一)第一行代码实战:天气
看完《第一行代码》后敲了他的实战项目,代码基本可以<em>运行</em>,但也存在一些BUG。1.后台自动更新<em>天气</em>章节更新每日一图部分putString参数错误2.切换城市章节最后的那块代码应该是刷新布局swipeRefreshLayout.setRefreshing(true)3.APP重新选择新城市后再手动刷新,会变成最开始选的那个城市,原因是在ChooseAreaFragment里面只是传了一个weather...
天气.rar
一个功能较为完整的<em>天气</em>预报程序 1. 可以罗列出全国所有的省、市、县。 2. 可以查看全国任意城市的<em>天气</em>信息。 3. 可以自由地切换城市,去查看其他城市的<em>天气</em>。 4. 提供手动更新以及后台自动更新<em>天气</em>
天气开发1——第二行代码(天气
前言: 首先我要感谢郭霖大神。郭霖大神的《第一行代码》、《第二行代码》可谓我的启蒙书。这几天特地把<em>酷</em><em>欧</em><em>天气</em>实现一遍,感受颇深。 以下为<em>酷</em><em>欧</em><em>天气</em>开发笔记,其涉及到的开源框架有: litepal(数据库操作) okhttp (网络传输) butterknife(简化findViewById,简化代码) glide(图片<em>加载</em>) gson(解析Json)
Android项目运行后在虚拟器加载失败的问题
跟着《第一行代码》里的那个<em>天气</em>app敲的代码,敲了一部分,<em>运行</em>项目时在虚拟器中<em>加载</em><em>失败</em>,代码应该没有什么问题,也没什么错误提示: [2015-08-11 10:41:35 - CoolWeather] Android Launch! [2015-08-11 10:41:35 - CoolWeather] adb is running normally. [2015-08-11 10:41:35 - CoolWeather] Performing com.coolweather.app.activity.ChooseAreaActivity activity launch [2015-08-11 10:41:38 - CoolWeather] Automatic Target Mode: using existing emulator 'emulator-5554' running compatible AVD '4.0.3' [2015-08-11 10:41:38 - CoolWeather] Uploading CoolWeather.apk onto device 'emulator-5554' [2015-08-11 10:41:38 - CoolWeather] Installing CoolWeather.apk... [2015-08-11 10:41:52 - CoolWeather] Success! [2015-08-11 10:41:52 - CoolWeather] Starting activity com.coolweather.app.activity.ChooseAreaActivity on device emulator-5554 [2015-08-11 10:41:53 - CoolWeather] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.coolweather.app/.activity.ChooseAreaActivity } 新手,各位前辈能帮我解答下吗,感激不尽。 补充,源码github地址:https://github.com/wang1076554677/QingFengWeather
第二行代码coolweather项目的省级ListView点击之后一直加载
package com.example.administrator.coolweather; import android.app.ProgressDialog; import android.os.
用Android Studio写的查看天气的app(CoolWeather)
项目源码在Github上面有Github项目源码在这里节选一下两个主要的Activity中的源码 ChooseAreaActivity.javapackage com.example.chencong.coolweather.activity;import android.app.Activity; import android.app.ProgressDialog; import android
【android】第一行代码CoolWeather中遇到的问题
看了很久,一路磕磕绊绊(原因有二:一是因为androidSDK更新太快,书上有些内容有点老了,总是遇到问题;二是自己遇到问题总想把它放一放自己静静,哈哈哈有病)的到最后的一个实例——coolweather,把过程中遇到的问题总结一下。 中国<em>天气</em>网的API接口 主题:这API别用了,换一个。 中国<em>天气</em>网的API用不了了,可以访问 http://www.weather.com.cn/data/lis
案例————coolweather————无法运行
<em>天气</em>预报 一.预期效果 二.实践操作: 三.核心代码: 1.ChooseAreaActivity.java package com.example.coolweather.activity; import java.util.ArrayList; import java.util.List; im
CoolWeather项目实战(第三部分终章:手动更新天气和切换城市以及后台自动更新)--->第一行代码-Android(第2版)
CoolWeather项目实战(第三部分终章:手动更新<em>天气</em>和切换城市以及后台自动更新) GitHub上源码的链接:https://github.com/wangliu1102/CoolWeather 前面我们实现了遍历全国所有省市县,选中某一县后可以查看其<em>天气</em>信息,但是选中后就没有办法查看其它城市的<em>天气</em>了。所以,这部分我们增加切换城市,并可以实时更新<em>天气</em>以及手动更新<em>天气</em>的功能,同时开启
学习第一行代码coolweather项目第二阶段的开发工作遇到的瓶颈
     模拟器<em>运行</em>项目之后,界面<em>显示</em>“正在<em>加载</em>”且无限循环,刚开始以为需要一定的时间才能反应,结果并不是,后面我以为是版本的原因,将android studio升级到3.0.1,发现这是一个巨大无比的坑,中间遇到无数的问题,最终只能重装电脑然后重新下载Android studio不了了之。    然而故事的结局并不是那么美好,装好Android studio之后将之前做的内容重新再写好,发现还是...
用eclipse做的天气,不能正常显示天气
如图,中国<em>天气</em>网返回的JSON数据乱码,不知道是不是这个原因,各位大神求帮忙 跟书上的代码都是一样的,第一行代码
跟着第一行代码敲天气,遇到了一个问题,但又没报错。请求帮助。
package com.coolweather.app.activity; import android.app.Activity; import android.app.ProgressDialog
天气实战
这是《第一行代码》的最后的<em>酷</em><em>欧</em><em>天气</em>的实战。这里出现了一点小小的错误,我这里不能在一个包下建立子包。原来,看网上的人都是com.coolweather.app后面继续点。。。,这样就算建立子包了。 看了几天都,有一点想不明白的。就是那个isFromWeatherActivity有什么作用? 还有,我发现程序有一点问题,我觉得很大可能是那个中国<em>天气</em>网的API的问题,因
天气 java.lang.RuntimeException: Unable to start activity ComponentInfo,程序无法运行
在学习郭霖老师《第一行代码》时,最后一章实战开发创建<em>酷</em><em>欧</em><em>天气</em>(CoolWeather)时遇到的问题 在完成遍历全国省市县数据的编码后,试<em>运行</em>在虚拟机上跑<em>显示</em>如图所示   真机测试直接闪退。也没有任何报错,不知道为什么。 一开始还以为是添加数据库的问题(初学数据库知识匮乏) 最终在logcat中发现的如下打印日志   Process: com.example.coolweather, P...
天气”开发开始阶段,app启动后一直是“正在加载”问题解决
仔细查阅了一下代码,发现问题出现在queryFromServer()方法中,从服务器返回的数据的转换写错了,错误代码如下: public void onResponse(Call call, Response response) throws IOException { String responseText = response.body().toString(); 问题就出在toString方...
天气(第一行代码)
这是我自己按照第一行代码书上编写的,如果<em>运行</em>时出现<em>加载</em><em>失败</em>,可能是没有连接网络。 注:听说<em>天气</em>预报的链接不怎么稳定
Android天气源代码(全)
基于Android端开源的<em>天气</em>预报软件,具备查看全国的省市县、查询任意城市<em>天气</em>、自由切换城市、手动更新<em>天气</em>、后台自动更新<em>天气</em>等功能。<em>酷</em><em>欧</em><em>天气</em>中的<em>天气</em>数据由和风<em>天气</em>提供,背景图片由必应提供,代码遵循Ap
天气showProgressDialog();代码报错
第一行代码的<em>酷</em><em>欧</em><em>天气</em>ChooseAreaActivity,showProgressDialog();总是<em>显示</em>报错,根据原版的代码修改后依然如此,想知道是什么原因。 以下是代码: package activity; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.app.ProgressDialog; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.preference.PreferenceManager; import android.text.TextUtils; import android.view.View; import android.view.Window; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import com.baoyu.coolweather1.R; import model.City; import model.CoolWeatherDB; import model.County; import model.Province; import util.HttpCallbackListener; import util.HttpUtil; import util.Utility; public class ChooseAreaActivity extends Activity { public static final int LEVEL_PROVINCE = 0; public static final int LEVEL_CITY = 1; public static final int LEVEL_COUNTY = 2; private ProgressDialog progressDialog; private TextView titleText; private ListView listView; private ArrayAdapter adapter; private CoolWeatherDB coolWeatherDB; private List dataList = new ArrayList(); /* * 省列表 * */ private List provinceList; /* * 市列表 * */ private List cityList; /* * 县列表 * */ private List countyList; /* * 选中的省份 * */ private Province selectedProvince; /* * 选中的城市 * */ private City selectedCity; /* * 当前选中的级别 * */ private int currentLevel; /* * 是否从WeatherActivity中跳转过来 * */ private boolean isFromWeatherActivity; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); isFromWeatherActivity = getIntent().getBooleanExtra("from_weather_activity", false); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); //已经选择了城市且不是从WeatherActivity跳转过来,才会直接转到WeatherActivity if (prefs.getBoolean("city_selected", false) && !isFromWeatherActivity) { Intent intent = new Intent(this, WeatherActivity.class); startActivity(intent); finish(); return; } requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.choose_area); listView = (ListView) findViewById(R.id.list_view); titleText = (TextView) findViewById(R.id.title_text); adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, dataList); listView.setAdapter(adapter); coolWeatherDB = CoolWeatherDB.getInstance(this); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView arg0, View view, int index, long arg3) { if (currentLevel == LEVEL_PROVINCE) { selectedProvince = provinceList.get(index); queryCities(); } else if (currentLevel == LEVEL_CITY) { selectedCity = cityList.get(index); queryCounties(); } else if (currentLevel == LEVEL_COUNTY) { String countyCode = countyList.get(index).getCountyCode(); Intent intent = new Intent(ChooseAreaActivity.this, WeatherActivity.class); intent.putExtra("county_code", countyCode); startActivity(intent); finish(); } } }); queryProvinces();//<em>加载</em>省级数据 } /* * 查询全国所有的省,优先从数据库查询,如果没有查询到再去服务器上查询 * */ private void queryProvinces(){ provinceList = coolWeatherDB.loadProvinces(); if (provinceList.size() > 0) { dataList.clear(); for (Province province : provinceList) { dataList.add(province.getProvinceName()); } adapter.notifyDataSetChanged(); listView.setSelection(0); titleText.setText("中国"); currentLevel = LEVEL_PROVINCE; } else { queryFromServer(null, "province"); } } /* * 查询选中省内所有的市,优先从数据库中查询,如果没有查询到再去服务器上查询 * */ private void queryCities() { cityList = coolWeatherDB.loadCities(selectedProvince.getId()); if (cityList.size() > 0) { dataList.clear(); for (City city : cityList) { dataList.add(city.getCityName()); } adapter.notifyDataSetChanged(); listView.setSelection(0); titleText.setText(selectedProvince.getProvinceName()); currentLevel = LEVEL_CITY; } else { queryFromServer(selectedProvince.getProvinceCode(), "city"); } } /* * 查询选中市内所有的县,优先从数据库中查询,如果没有查询到再去服务器上查询 * */ private void queryCounties() { countyList = coolWeatherDB.loadCounties(selectedCity.getId()); if (countyList.size() > 0) { dataList.clear(); for (County county : countyList) { dataList.add(county.getCountyName()); } adapter.notifyDataSetChanged(); listView.setSelection(0); titleText.setText(selectedCity.getCityName()); currentLevel = LEVEL_COUNTY; } else { queryFromServer(selectedCity.getCityCode(), "county"); } } /* *根据传入的代号和类型从服务器上查询省市县数据 * */ private void queryFromServer(final String code, final String type) { String address; if (!TextUtils.isEmpty(code)) { address = "http://www.weather.com.cn/data/list3/city" + code + ".xml"; } else { address = "http://www.weather.com.cn/data/list3/city.xml"; } showProgressDialog(); HttpUtil.sendHttpRequest(address, new HttpCallbackListener() { @Override public void onFinish(String response) { boolean result = false; if ("province".equals(type)) { result = Utility.handleProvincesResponse(coolWeatherDB, response); } else if ("city".equals(type)) { result = Utility.handleCitiesResponse(coolWeatherDB, response, selectedProvince.getId()); } else if ("county".equals(type)) { result = Utility.handleCountiesResponse(coolWeatherDB, response,selectedCity.getId()); } if (result) { runOnUiThread(new Runnable() { @Override public void run() { closeProgressDialog(); if ("province".equals(type)) { queryProvinces(); } else if ("city".equals(type)) { queryCities(); } else if ("county".equals(type)) { queryCounties(); } } }); } } @Override public void onError(Exception e) { runOnUiThread(new Runnable() { @Override public void run() { closeProgressDialog(); Toast.makeText(ChooseAreaActivity.this, "<em>加载</em><em>失败</em>",Toast.LENGTH_SHORT).show(); } }); } }); } /* * <em>显示</em>进度对话框 * */ private void closeProgressDialog() { if (progressDialog == null) { progressDialog = new ProgressDialog(this); progressDialog.setMessage("正在<em>加载</em>..."); progressDialog.setCanceledOnTouchOutside(false); } progressDialog.show(); } /* * 关闭进度对话框 * */ private void closeProgressDialog() { if (progressDialog != null) { progressDialog.dismiss(); } } /* * 捕获Back按键,根据当前的级别来判断,此时应返回市列表、省列表、还是直接退出 * */ @Override public void onBackPressed() { if (currentLevel == LEVEL_COUNTY) { queryCities(); } else if (currentLevel == LEVEL_CITY) { queryProvinces(); } else { if (isFromWeatherActivity) { Intent intent = new Intent(this, WeatherActivity.class); startActivity(intent); } finish(); } } }
第一行代码天气开发(二)
在这一阶段,我们的目标是遍历全国省市县数据,我们从前面的介绍中已经看出,我们可以从服务器端得到我们想要的数据,因此在这里和服务器的交互是少不了的了,所以我们现在util包下增加一个HttpUtil类
第一行代码天气开发(五)
为了更加智能,我们在这里假如后台自动更新<em>天气</em>的功能,这样就可以尽可能地保证每次打开软件时看到的都是最新的<em>天气</em>信息,想要实现这个功能,就需要创建一个长期在后台<em>运行</em>的定时任务。
天气开发2——第二行代码(天气
上一篇我们对本项目需要使用到的开源库做了简单使用介绍,接下来进入正轨。
天气开发4——第二行代码(天气
本篇介绍了<em>天气</em>app的后台服务,并最后附上了代码
第一行代码 天气 源码
第一行代码最后实战部分,做了一些优化,添加了<em>显示</em>信息,增加多页<em>显示</em>
《第一行代码》天气(kotlin版)
使用Kotlin对《第一行代码:Android》——郭霖,重写了最后的实践”<em>酷</em><em>欧</em><em>天气</em>“
第一行代码中天气项目的疑问
我照着《第一行代码》中<em>酷</em><em>欧</em><em>天气</em>项目写代码,写完书中的第二阶段之后,在<em>手机</em>上测试时,会一直<em>显示</em>“正在<em>加载</em>。。。”。我在网上寻求解答时,有说接口过期的,有说这个<em>天气</em>API不能用的。如果是接口过期需要换新的
Android实战项目:第一行代码CoolWeather
Android实战项目:&amp;amp;lt;&amp;amp;lt;第一行代码&amp;amp;gt;&amp;amp;gt; 项目地址WeatherDemo:https://github.com/Tian-Zhen-Yin/WeatherDemo 项目分包: 依赖: dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation...
Android根据天气改编的一个区域性的城市天气预报app
1.本程序采用和风<em>天气</em>的免费API获取<em>天气</em>数据,在http://guolin.tech/api/weather/register上注册就可免费获取<em>天气</em>信息,<em>天气</em>信息以json的形式返回给我们。故先创建一个json的包用于对json数据的解析,代码如下: 注意:由于一时粗心,API类应该是获取<em>天气</em>中的AQI指数的,此处并不影响。 API类: public class API { publ...
各类天气预报代码
名称:265<em>天气</em>根据IP自动获得当地的<em>天气</em>情况代码:http://weather.265.com/weather.htm" width="168" height="54" frameborder="no" border="0" marginwidth="0&quoat; marginheight="0" scrolling="no">名称:QQ<em>天气</em>预报代码(一)代码 :http://minis
天气开发笔记3:显示天气信息
首先来创建布局文件,先思考布局文件中需要放置哪些控件,这就要由服务器返回的<em>天气</em>数据来决定。 {"weatherinfo": {"city":"昆山","cityid":"101190404","temp1":"21℃","temp2":"9℃", "weather":"多云转小雨","img1":"d1.gif","img2":"n7.gif","ptime":"11:00"} }cityid
第一行代码天气开发(三)
这步是最关键的一步,编写用于遍历省市县数据的activity了,在activity包下面新建ChooseAreaActivity继承自Activity该类的逻辑是下面这样的: 在onCreate()方法中<em>显示</em>获取到了一些控件的实例,然后去初始化ArrayAdapter,将他设置为listview的适配器,之后去获取CoolWeatherDB的实例,并给ListView设置点击事件,到这里我们的初始
android 天气完整项目
先要建议三张表:province、city、county,分别用于存放省市县的数据信息。 Province.java package com.example.lenovo.coolweather.db; import org.litepal.crud.DataSupport; /** * 代表省的数据库表 */ public class Province extends DataSu
kotlin版的天气 (郭林大神的第一行代码第二版)
https://github.com/breakfrox/Coolweather.git 就是标题说的那样/囧,将<em>酷</em><em>欧</em><em>天气</em>用kotlin编写了,感兴趣的同学可以参考一下 也不知道说啥, 原本以为kotlin不兼容litepal,然后去网上查了很久,最后靠谷歌看到一点(百度真不靠谱), 使用litepal        例子            class City(va
Android 开发-如何将天气空项目工程托管到GitHub上面-第一行代码中的内容补充
在将项目托管到GitHub上面前,首先你要有一个Github账户,然后是准备一个Android项目工程,其次是电脑上事先安装好git 代码管理器。 以上条件具备后,你首先需要在自己的Github账户上创建一个工程文件存放目录。具体如下: 第一步:创建项目工程版本库存放目录Repository Name 是项目存放版本库名,不要一定和你的项目名相同; 然后选择添加一个Android项目类型的 ...
相见恨晚的超实用网站
相见恨晚的超实用网站 持续更新中。。。
字节跳动视频编解码面经
三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时想着能进去就不错了,管他哪个岗呢,就同意了面试...
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
python学习方法总结(内附python全套学习资料)
不要再问我python好不好学了 我之前做过半年少儿编程老师,一个小学四年级的小孩子都能在我的教学下独立完成python游戏,植物大战僵尸简单版,如果要肯花时间,接下来的网络开发也不是问题,人工智能也可以学个调包也没啥问题。。。。。所以python真的是想学就一定能学会的!!!! --------------------华丽的分割线-------------------------------- ...
python 简易微信实现(注册登录+数据库存储+聊天+GUI+文件传输)
socket+tkinter详解+简易微信实现 历经多天的努力,查阅了许多大佬的博客后终于实现了一个简易的微信O(∩_∩)O~~ 简易数据库的实现 使用pands+CSV实现数据库框架搭建 import socket import threading from pandas import * import pymysql import csv # 创建DataFrame对象 # 存储用户数据的表(...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到<em>天气</em>数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是<em>天气</em>预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
Python实例大全(基于Python3.7.4)
博客说明: 这是自己写的有关python语言的一篇综合博客。 只作为知识广度和编程技巧学习,不过于追究学习深度,点到即止、会用即可。 主要是基础语句,如三大控制语句(顺序、分支、循环),随机数的生成,数据类型的区分和使用; 也会涉及常用的算法和数据结构,以及面试题相关经验; 主体部分是针对python的数据挖掘和数据分析,主要先攻爬虫方向:正则表达式匹配,常用数据清洗办法,scrapy及其他爬虫框架,数据存储方式及其实现; 最后还会粗略涉及人工智能领域,玩转大数据与云计算、进行相关的预测和分析。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
JavaScript 为什么能活到现在?
作者 | 司徒正美 责编 |郭芮 出品 | CSDN(ID:CSDNnews) JavaScript能发展到现在的程度已经经历不少的坎坷,早产带来的某些缺陷是永久性的,因此浏览器才有禁用JavaScript的选项。甚至在jQuery时代有人问出这样的问题,jQuery与JavaScript哪个快?在Babel.js出来之前,发明一门全新的语言代码代替JavaScript...
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:<em>加载</em>配置、启动工作进程及非停升级。worker 进程负责处...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Python 编程开发 实用经验和技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法和技巧,包括小数保留指定位小数、判断变量的数据类型、类方法@classmethod、制表符中文对齐、遍历字典、datetime.timedelta的使用等,会持续更新......
吐血推荐珍藏的Visual Studio Code插件
作为一名Java工程师,由于工作需要,最近一个月一直在写NodeJS,这种经历可以说是一部辛酸史了。好在有神器Visual Studio Code陪伴,让我的这段经历没有更加困难。眼看这段经历要告一段落了,今天就来给大家分享一下我常用的一些VSC的插件。 VSC的插件安装方法很简单,只需要点击左侧最下方的插件栏选项,然后就可以搜索你想要的插件了。 下面我们进入正题 Material Theme ...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
VC++外挂教程下载19(知其所以然技术论坛)下载
VC++外挂 DELPHI 外挂技术 外挂制作 Windows 程序设计 外挂制作 教会你写自己的外挂! 要求:有一定的编程基础(VC,DELPHI),即使不会也有基础课程 网站:www.zqsyr.com (知其所以然技术论坛)可以在百度中搜索 教程观看地址:http://www.zqsyr.com/viewthread.php?tid=33&extra=page%3D1 网站已经备案,大家可以放心! CSDN中搜索(知其所以然技术论坛)有更多资源! 相关下载链接:[url=//download.csdn.net/download/lukarl592/2102285?utm_source=bbsseo]//download.csdn.net/download/lukarl592/2102285?utm_source=bbsseo[/url]
常用的60招电脑操作精典秘籍下载
常用的60招电脑操作精典秘籍常用的60招电脑操作精典秘籍常用的60招电脑操作精典秘籍常用的60招电脑操作精典秘籍 相关下载链接:[url=//download.csdn.net/download/eoetlyj/2857671?utm_source=bbsseo]//download.csdn.net/download/eoetlyj/2857671?utm_source=bbsseo[/url]
java各种面试题下载
很齐全的java面试题目,也比较经典,有答案! 相关下载链接:[url=//download.csdn.net/download/gongaiqi/4893986?utm_source=bbsseo]//download.csdn.net/download/gongaiqi/4893986?utm_source=bbsseo[/url]
相关热词 c#委托 逆变与协变 c#新建一个项目 c#获取dll文件路径 c#子窗体调用主窗体事件 c# 拷贝目录 c# 调用cef 网页填表c#源代码 c#部署端口监听项目、 c#接口中的属性使用方法 c# 昨天
我们是很有底线的