小编key*_*rdr的帖子

根据父类型生成LayoutParams

我发现自己需要完全用Java创建一个View而不知道父类的具体类型.

例:

public View getView(int position, View convertView, ViewGroup parent){
    if(null == convertView){
        convertView = new TextView(parent.getContext());
    }
    ((TextView) convertView).setText(getItem(position).getName());
}
Run Code Online (Sandbox Code Playgroud)

现在假设我想改变它,以便convertView在两个方向都是wrap_content.由于这是一个适配器,我想避免将Adapter与父类的具体类型耦合,但我在setLayoutParams()中给出的LayoutParams必须是正确的具体类型,否则应用程序将崩溃(即如果父类是一个ListView它必须是ListView.LayoutParams,如果它是一个LinearLayout,它必须是一个LinearLayout.LayoutParams等).我不想使用switch语句,因为这只是一种更灵活的耦合形式,如果我将这个适配器连接到一个视图,我没想到我仍然会崩溃.有没有通用的方法来做到这一点?

android android-layout viewgroup

13
推荐指数
1
解决办法
8600
查看次数

ListView中的ViewPager和OnItemClickListener

我正在创建一个轻扫到列表视图适配器.我的基本方法是将列表项的视图包装为ViewPager中的第二个视图,并在ViewPager的项更改侦听器中提供必要的回调.通过很多痛苦我已经使View循环器按预期工作,以及实现了ViewHolder和ViewBinder模式.我甚至设法阻止ListView在ViewPager滚动时接管触摸事件,而不必创建ListView的自定义子类(我可以从适配器完成所有操作).

我遇到麻烦的地方是让选择器和OnItemClickListener工作.在查看ListView的源代码之后,似乎通过重写ViewPager的hasFocusable()方法总是返回false(稍后我将从子视图中提取此值)这些事情应该已经重新启用.不幸的是,这种情况并非如此.我已经尝试了setDecendantFocusability()解决方法,但我仍然卡住了.

如果可能的话,我想避免扩展ListView以提供最大程度的模块化.出于类似的原因,我不想将选择器添加到ViewPager的背景中(如果dev更改了ListView的选择器,则不会反映这一点).本质上,我希望在ListView和子视图之间使ViewPager代码透明.有任何想法吗?

android listadapter android-viewpager

7
推荐指数
1
解决办法
4244
查看次数

git p4 clone没有文件

我正在从Perforce迁移到git,在这个过程中我正在努力使文件结构正确.

目前的perforce结构是这样的:

//depot
    /android
        /main
        /other_branches
        /core_library
            /main
            /other_branches
Run Code Online (Sandbox Code Playgroud)

我在git中拍摄这样的东西:

/android
/core_library
Run Code Online (Sandbox Code Playgroud)

我设置了我的客户端规范View如下(我稍后会担心分支):

//depot/android/main/... //p4-git/android/...
//depot/android/core_library/main/... //p4-git/core_library/...
Run Code Online (Sandbox Code Playgroud)

我运行以下命令,显示完整的提交历史记录,但没有文件.

set P4CLIENT=p4-git
git p4 clone --use-client-spec //p4-git/@all
Run Code Online (Sandbox Code Playgroud)

git perforce git-p4

6
推荐指数
1
解决办法
313
查看次数

以圆形显示动画为中心

我正在尝试创建一个从View(API 21+)中心开始的圆形显示动画.我试着用的平均值View.getLeft()View.getRight()x和View.getTop()View.getBottom()y的(这是什么呢,但如果我的观点是由偏移CoordinatorLayout,该值是错误的.我抓住一个中值OnPreDrawListener,所以查看已测.

animation android

2
推荐指数
1
解决办法
571
查看次数