Android 如何获取特定视图的唯一id //正在膨胀行 customView1=充气机。充气(R.layout.single_row_materialdimension,null); 容器=(视图组)findViewById(R.id.container); container.addView(customView1,0,新的ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_父级,ViewGroup.LayoutParams.FILL_父级)); //从父对象获取子对象计数 int child=container.getChildCount(); container.setTag(child+1); for(int i=0;i

Android 如何获取特定视图的唯一id //正在膨胀行 customView1=充气机。充气(R.layout.single_row_materialdimension,null); 容器=(视图组)findViewById(R.id.container); container.addView(customView1,0,新的ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_父级,ViewGroup.LayoutParams.FILL_父级)); //从父对象获取子对象计数 int child=container.getChildCount(); container.setTag(child+1); for(int i=0;i,android,Android,使用setId()和getId()方法 //inflating row customView1=inflater.inflate(R.layout.single_row_materialdimension, null); container = (ViewGroup) findViewById(R.id.container); container.addView(customView1, 0, new ViewGroup.LayoutParams(ViewGroup.LayoutParam

使用setId()getId()方法

//inflating row  
customView1=inflater.inflate(R.layout.single_row_materialdimension, null);

container = (ViewGroup) findViewById(R.id.container);
container.addView(customView1, 0, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));

//Getting child Count from parent inflated the child  
int child = container.getChildCount();
container.setTag(child + 1);

for (int i = 0; i < child; i++) {
    Log.e("ChildAt", "" + container.getChildAt(i));
    View childView = container.getChildAt(i);
    Log.e("childView ", "childView" + childView);
    TextView tv1=(TextView)childView.findViewById(R.id.txt_parent_plus_id);

    // setting onClickListner to inflated child
    //i want to get unique id when i click on the inflated child**
    tv1.setOnClickListener(handleOnClick(tv1));
}

//i want to get unique id when i click on the inflated child**

View.OnClickListener handleOnClick(final View view) {
    return new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Log.e("Clicked", "Clicked" + container.getTag());
        }
    };
}
for(int i=0;i
问题不清楚,请详细解释。你的问题有点不清楚。你想干什么?获取已单击视图的Id?或者尝试获取任何资源视图的Id?我有一个包含textview1、Edittext1、textview2的父布局和包含textview3、EditText2的子布局,textview4…当我单击textview2时,我试图做的是,然后childlayout膨胀,现在textview4有了onclicklistner,当我单击textview4时,新的子项将膨胀到它下面…我想要上一个textview4子项和当前膨胀的textview4子项的唯一id获取空指针异常,第一个子项正在膨胀,但在第二个子项膨胀时,它在这行tv1.setId(i)上给了我空指针异常;tv1.setOnClickListener(handleOnClick(tv1));删除该tv1.setOnClickListener(handleOnClick(tv1));在代码上面粘贴,然后检查第一个子项,我得到的onclick id为0,但是当我膨胀第二个子项时,空指针来了,当我第一次单击父对象,然后一个id为“正在膨胀”的子对象是正确的,但当我第二次单击父对象以再次获取膨胀时,空指针出现,我根据您编辑了我的代码。
 for (int i = 0; i < child; i++) {
 Log.e("ChildAt", "" + container.getChildAt(i));
 View childView = container.getChildAt(i);
 TextView tv1=(TextView)childView.findViewById(R.id.txt_parent_plus_id);
 tv1.setId(i);
 }


tv1.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {

           int id=tv1.getId();
           Log.e("Clicked", "Clicked" + String.valueOf(id)));
        }
    });