2016-11-28 104 views
-2

我不能從fragmentActivity ListItem點擊聽衆我想我做對了,但不知道哪裏是問題。ListView點擊在Android片段

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle saveInstanceState) { 
    return inflater.inflate(R.layout.scholorship_listing_main,container,false); 
} 

@Override 
public void onStart() { 


    super.onStart(); 


    list=(ListView)getActivity().findViewById(R.id.Scholorshiplist); 
    setAdapterValue(); 


    list.setOnItemClickListener(new AdapterView.OnItemClickListener() 

    { 


     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      Intent intent = new Intent(getActivity(), ScholorshipDetail.class); 
      getActivity().startActivity(intent); 
      //getActivity().finish(); 
     } 
    }); 

} 

而且我Activity類上,我要移動的

public class ScholorshipDetail extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.scholorship_detail); 
    } 
} 

和我的XML是:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/activity_main" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context="com.example.temp.scholorshipapp.MainActivity"> 

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Scholorships" 
    android:textColor="@color/black" 
    android:textSize="25sp" 
    android:layout_marginTop="10dp" 
    android:layout_marginBottom="10dp" 
    android:layout_marginLeft="80dp" 
    android:layout_centerHorizontal="true" 
    android:id="@+id/txt_scholorship" 
    android:divider="#C0C0C0" 
    android:dividerHeight="4px"/> 

<View 
    android:layout_width="match_parent" 
    android:layout_height="2dp" 
    android:background="@android:color/black" 
    android:layout_below="@+id/txt_scholorship"/> 

<ListView 
    android:layout_below="@id/txt_scholorship" 
    android:id="@+id/Scholorshiplist" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:divider="#C0C0C0" 
    android:dividerHeight="4px" 

    /> 
</RelativeLayout> 
+0

CA您發佈onCreateView() –

+0

什麼是不工作?什麼是問題? –

+0

意圖在列表視圖中單擊不起作用@VladMatvienko –

回答

0

這可能是您的適配器佈局包含click監聽器view.i.e,按鈕視圖或其他視圖,這將阻止listview click listner。因此,在您的適配器父佈局需要加擋或後代如下的可聚焦性,

android:descendantFocusability="blocksDescendants" 
(OR) 
android:focusable="false" 

希望這是有益:)

2

郵政onCreateview(代碼),而不是在onStart()在你的片段

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 

    View view = inflater.inflate(R.layout.fragmentlayout, container, false); 
    list=(ListView) view.findViewById(R.id.Scholorshiplist); 
    setAdapterValue(); 

list.setOnItemClickListener(new AdapterView.OnItemClickListener() 
{ 
@Override 
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
     Intent intent = new Intent(getActivity(), ScholorshipDetail.class); 
     getActivity().startActivity(intent); 
     //getActivity().finish(); 
    } 
}); 
return view; 
} 
+0

其還不工作@sasikumar –

+0

發佈您的setAdapterValue()方法代碼 – sasikumar