我正在从XML中膨胀RelativeLayout,然后尝试以编程方式设置其布局参数并接收ClassCastException.
码:
profileHeader = (RelativeLayout)mInflater.inflate(R.layout.user_profile_header, null);
profileHeader.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.FILL_PARENT, RelativeLayout.LayoutParams.FILL_PARENT));
Run Code Online (Sandbox Code Playgroud)
投
E/AndroidRuntime( 2963): java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams
E/AndroidRuntime( 2963): at android.widget.ListView.measureScrapChild(ListView.java:1119)
E/AndroidRuntime( 2963): at android.widget.ListView.measureHeightOfChildren(ListView.java:1202)
E/AndroidRuntime( 2963): at android.widget.ListView.onMeasure(ListView.java:1111)
E/AndroidRuntime( 2963): at android.view.View.measure(View.java:8222)
E/AndroidRuntime( 2963): at android.view.ViewGroup.measureChildWithMargins(V
Run Code Online (Sandbox Code Playgroud)
我在网上看到其他笔记尝试使用LinearLayout.LayoutParams,但这似乎没有帮助.
如果你想知道为什么我这样做而不只是在XML中设置它因为我看到一些奇怪的地方布局"跳转"到一个换行/换行.我在XML中将其设置为fill_parent/fill_parent,并将视图"缩小"滚动到看似包装/换行的内容.它真的很奇怪.看着foursquared的android源代码,我找到了一条评论,其中开发人员说同样的事情:
"虽然布局参数有些奇怪.如果我们没有明确地将布局设置为在充气后填充/填充,布局会跳转到换行/换行布局." (FriendsActivity.java:258)
这听起来就像我的问题,因此我试图做同样的事情(通过代码设置布局),但在他的情况下,他使用的是LinearLayout,而我使用的是RelativeLayout.
我错过了什么?提前致谢.
我有一个tsvector列,我想在行更改时更新.对于INSERT我正在使用此触发器:
CREATE TRIGGER albums_vector_insert BEFORE INSERT
ON albums
FOR EACH ROW EXECUTE PROCEDURE
tsvector_update_trigger('search_vector', 'pg_catalog.english', 'name')
Run Code Online (Sandbox Code Playgroud)
看似合适.我想在UPDATE子句上使用另一个触发器,但我只想在名称实际更改时触发它,所以我不会浪费周期不必要地更新搜索向量.我试过这个:
CREATE TRIGGER albums_vector_update BEFORE UPDATE ON albums
FOR EACH ROW EXECUTE PROCEDURE
IF NEW.name <> OLD.name THEN
tsvector_update_trigger(search_vector, 'pg_catalog.english', name);
END IF;
Run Code Online (Sandbox Code Playgroud)
但是当我尝试创建触发器时,这会引发2个错误:
Error : ERROR: syntax error at or near "NEW"
LINE 3: IF NEW.name <> OLD.name THEN
^
Error : ERROR: syntax error at or near "IF"
LINE 1: END IF
^
Run Code Online (Sandbox Code Playgroud)
根据我的理解,如果我使用触发器程序语法,ala:
CREATE OR …
我有一个TextView,我通过Linkify动态添加可点击链接(使用自定义TransformFilter).一切都很好.我现在要做的是在点击链接时更改链接的背景颜色.在CSS中,它将通过:active伪选择器完成.
我想我可以在styles.xml中指定它,但我不知道参数名称是什么.