我试着做自定义组件.我扩展了View
课程并用onDraw
覆盖方法做了一些绘图.为什么我需要覆盖onMeasure
?如果我没有,一切都被证明是正确的.有人可以解释一下吗?我该怎么写我的onMeasure
方法?我见过几个教程,但每个教程都有点不同.有时他们会super.onMeasure
在最后打电话,有时他们会使用setMeasuredDimension
而不是打电话.差异在哪里?
毕竟我想要使用几个完全相同的组件.我将这些组件添加到我的XML
文件中,但我不知道它们应该有多大.我希望稍后设置它的位置和大小(为什么我需要在自定义组件类时设置大小,onMeasure
如果在onDraw
我绘制它时也是如此).什么时候我需要这样做?
我有一张超过一百万行的表.我需要重置序列并用新值重新分配id列(1,2,3,4 ...等...).有没有简单的方法呢?
是否可以比较具有相同结构的两个数据库?假设我有两个数据库DB1和DB2,我想检查它们之间的数据是否存在差异.
是否可以JOIN
从两个独立的postgres数据库中的行?
我正在使用一个服务器中的几个数据库的系统,有时我真的需要这样的功能.
我真的需要这样做:
UPDATE table t1
SET column1=t2.column1
FROM table t2
INNER JOIN table t3
USING (column2)
GROUP BY t1.column2;
Run Code Online (Sandbox Code Playgroud)
但postgres说我有关于GROUP BY子句的语法错误.有什么不同的方法呢?
可能重复:
动态更改网站图标
如何以gmail方式在tab(favicon)上创建加载效果.当我点击需要使用AJAX的东西时,gmail会在浏览器的标签栏或标题栏中显示一个很好的加载圈.我知道我可以改变图标,但我所有的尝试都以丑陋的方式结束 - 有时它是有效的,有时候不是.有时,favicon不会更改,有时它会更改一次,以后不会应用更改.最好的方法是什么?
我正在尝试在Android上使用AdMobs.这是我的表现:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.krinsen.javadocreader"
android:versionCode="2"
android:versionName="1.0.1" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:name=".app.SimpleApp"
android:hardwareAccelerated="true"
android:icon="@drawable/icon_about"
android:label="@string/app_name"
android:theme="@style/Theme.Javadoc" >
<activity
android:name=".ui.DocTypeActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="android.app.default_searchable"
android:value=".ui.SearchableJavadocActivity" />
</activity>
<activity
android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)
这是我的看法:
<com.google.ads.AdView
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:id="@+id/ads"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
ads:adSize="BANNER"
ads:adUnitId="@string/ad_unit_id"
ads:testDevices="@string/test_devices"
ads:loadAdOnCreate="true" />
Run Code Online (Sandbox Code Playgroud)
我有最新的admob图书馆.我仍然在logcat中得到这个奇怪的错误:
INTERNET permissions must be enabled in AndroidManifest.xml
Run Code Online (Sandbox Code Playgroud)
我有互联网许可.我的应用程序使用互联网并使用它非常好.只有广告不想合作.我在哪里可以找到一个bug?
我有几个应用程序实现了一些登录逻辑.如果让我们说一个应用程序被记录到some_account@gmail.com我希望所有这些应用程序都记录到some_account@gmail.com.如果我退出,我希望所有应用程序都这样做.但我不想马上做同样的事情.应用程序本身可以处理它,但它需要知道是否已经登录了其他应用程序,如果是,只需登录与此应用程序相同的电子邮件地址.所以我需要知道记录其他应用程序的电子邮件地址是什么.我需要存储一个字符串.
我首先考虑的是SharedPreferences
,但这是一个相当糟糕的主意,因为还有其他选项(并且stackoverflow充满了进程之间使用SharedPreferences的不良示例).尽管我尝试了这个.设置sharedUserId
所有应用程序,调用createPackageContext
并最终尝试获取首选项.但我无法从中读到.总是我得到null,即使我使用了Context.Mode_WORLD_READABLE
- 这是被弃用的.
好的,所吸取的教训不SharedPreferences
适用于此(我想).但我现在需要的是将单个字符串存储在其他我的应用程序可以读取的地方.
也许我应该用ContentProvider
?但严重的是...一根绳子?另一种选择是什么?我确信,对于如此简单的操作,我真的不需要Service
或ContentProvider
,但实际上我不知道该怎么做.
我已经创建了一个自定义RatingBar,它可以有5种不同的颜色,并且矩形条的点数低于星星.这是它的样子:
我在几个地方使用这个视图,在Android 4.0+上一切正常.但在姜饼上我有一些问题.这是视图类的代码:
public class KrinsenRating extends RelativeLayout {
private TextView mRanking;
private RatingBar mStars;
public KrinsenRating(Context context, AttributeSet attrs) {
super(context, attrs);
LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
layoutInflater.inflate(R.layout.krinsen_rating, this);
loadViews();
}
public KrinsenRating(Context context) {
super(context);
loadViews();
}
private void loadViews() {
mRanking = (TextView) findViewById(R.id.ranking_bar_position);
mStars = (RatingBar) findViewById(R.id.ranking_bar);
}
public void setRating(long rating){
RatingConverter rc = new RatingConverter(rating);
Bitmap bmp_empty = ((BitmapDrawable) getResources().getDrawable(R.drawable.star_empty)).getBitmap();
Bitmap bmp_half = null;
Bitmap bmp_full = null;
switch (rc.getColor()) {
case 1:
bmp_half …
Run Code Online (Sandbox Code Playgroud) 我创建了.hgignore文件,但在此之前我将项目结构发送到服务器.现在,hgignore不适用于之前发送的文件.我在某处读到我需要从跟踪列表中删除这些文件和目录,或者以某种"私有"方式添加它,但我无法弄清楚我是如何做到的.问题更加复杂,因为我写了sh脚本,它将这个结构的一部分复制到其他地方(项目由一些客户端应用程序和www服务器组成,这些服务器文件在每个hg push命令之后被复制到其他地方).所以我想忽略一些文件(但希望这些文件存在于服务器上,只需用一些配置推送一次)我想用我的sh脚本复制那些被忽略的文件(这个脚本中最重要的是我正在使用的事实'hg archive'来处理我要复制的内容).我希望这对某人来说是可以理解的:)
如标题.我有一个列有一些文本值.例如,列data1具有值('31',32','',NULL).现在我想用data1中的数据更新另一列说data2(类型INT),所以我想尝试做类似的事情:
UPDATE table SET data2=CAST(data1 AS INT).
Run Code Online (Sandbox Code Playgroud)
问题是因为PostgreSQL无法将NULL或空值转换为INT.
我必须做一些复杂的数据导入.我需要做一些UPDATE,目前在一个查询中更新超过300万行.该查询每个应用大约30-45秒(其中一些甚至4-5分钟).我的问题是,我是否可以加快速度.我在哪里可以阅读有关它的内容,什么样的索引以及我可以设置哪些列来改进这些更新.我不需要exacly回答,所以我不显示表格.我正在寻找一些东西来了解它.