如何获取父布局中的视图ID?

时间:2013-01-30 10:08:16

标签: android android-layout android-view

如何在父布局中获取视图ID?我可以通过id获取视图,但是如果我可以通过视图获取id?

更新: 我做什么

我创建了一些View并添加到LinearLayout:

  LinearLayout ll = new LinearLayout();

// add few View
for (int i=0;i<100;i++){
    MyView mView = new MyView(this);

 // MyView has time field, and at creation time MyView stack ordered by time-field
    mView.setTime(anyTime+i);

 // When I click on mView - opens screen where I can modify time
    mView.setOnClickListener(listener);

 ll.addView(mView)
}

所以在mView修改后我赢得了将mView移动到正确的位置,为此我需要知道当前MyView的LinearLayout(ll)索引,上一个和下一个MyView的索引

更新2: 也许我需要列表,我将对MyView进行排序并重新绘制所有LinearLayout

3 个答案:

答案 0 :(得分:0)

<强> XML

<ImageView
android:id="@+id/image1"
android:layout_height="WRAP_CONTENT"
android:layout_width="FILL_PARENT"
/>

ImageView imageView = new ImageView(this);
String imageName = "image1"// Your ImageView id name
int id = getResources().getIdentifier(imageName, "id", getPackageName());

getIdentifier Description

希望它可以帮助你!!

答案 1 :(得分:0)

在我的观点 - 没有ID你无法访问views.U可以去tag.for在视图中你可以setTag()你可以getTag()。我们也可以使用标签作为ID somecases。

答案 2 :(得分:0)

int ViewGroup.indexOfChild(View child)会帮助我。当我测试所有的decigion时,我会写更多。