Intereting Posts
Appcompat-v7 v21.0.0 вызывая сбои на устройствах Samsung с Android v4.2.2 Событие Onclick в текстовом режиме (с TextIsSelectable = "true") ony вызывало второй щелчок Java.io.FileNotFoundException: com / google / inject / internal / util / $ Finalizer.class в начале приложения для Android Как выровнять текст в android Выпустить версию * .apk в Android Studio Android: onSaveInstanceState не вызывается из активности Android-клавиатура webview не появляется в течение длительного времени для ввода значений Разница между Camera.translate и Matrix.preTranslate или Matrix.postTranslate? Диспетчер устройств Windows 8.1 теперь показывает устройство ACER, а не устройство Android для Google Nexus 7 Изображение Поворот анимации Цикл не работает на Android RecyclerView ItemTouchHelper Action_Drag_Ended? Apt-зависимости в Android-градиенте – для чего он используется? Как интегрировать сканер штрих-кода Zxing без установки реального приложения zxing (невозможно разрешить символ: .android.CaptureActivity)? Href = "tel:" на android пытается добавить контакт вместо запуска вызова Android-фрагменты против составных элементов управления

Как сделать listFooter недоступным для просмотра

Так что это сделка, я пробовал смотреть на другие темы, подобные этой, здесь https://stackoverflow.com/questions/12479909/how-to-make-list-header-and-footer-not-click-able

Но это не сработает. Я не могу «ничего не делать при нажатии».

Но проблема заключается не в том, чтобы справляться с тем, что происходит при щелчке по списку, то есть в том, что список дает обратную связь, как если бы он был нажат (IE загорается), и я не хочу этого.

Я не понимаю, почему приведенная ниже часть не работает (IE по-прежнему можно выбрать / кликать)

ViewGroup footer = (ViewGroup)inflater.inflate(R.layout.listview_footer_row, null, false);//This is not working as it should listView.addFooterView(footer); 

У кого-нибудь есть идеи, почему мой нижний колонтитул доступен для кликабельности / выбора, несмотря на то, что я добавляю тэ-фальш-статут методу?

Вот мой код

 import java.util.ArrayList; import android.content.Intent; import android.annotation.SuppressLint; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.Button; import android.widget.ListView; public class PortfolioFragMent extends Fragment{ private ListView listView; private Button goButton; private String[] listheader = {"Idag","Senaste","Antal","Avkastning %","Avkastning","Tot Värde"}; private static ShareHoldingAdapter adapter; private int totalElemInlist = listheader.length; private int currentelemInList=0; private ArrayList<ShareHolding> allShareHoldings = new ArrayList<ShareHolding>(); private Button buyButton; @SuppressLint("NewApi") public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @SuppressLint({ "NewApi", "NewApi" }) @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){ allShareHoldings = Portfolio.getPortfolio().getAllShareHoldings(); super.onCreate(savedInstanceState); View view = inflater.inflate(R.layout.portfolioframe, container, false); listView = (ListView)view.findViewById(R.id.listView1); String[] array = new String[] {"one", "two", "three"}; /**********************************/ adapter = new ShareHoldingAdapter(getActivity(), R.layout.listview_item_row, allShareHoldings); /***********************************/ ViewGroup header = (ViewGroup)inflater.inflate(R.layout.listview_header_row, null, false); ViewGroup footer = (ViewGroup)inflater.inflate(R.layout.listview_footer_row, null, false);//This is not working as it should listView.addHeaderView(header); listView.addFooterView(footer); goButton = (Button)view.findViewById(R.id.testButton); goButton.setText(listheader[currentelemInList]); listView.setAdapter(adapter); goButton.setOnClickListener(new OnClickListener() { public void onClick(View view) { String buttonPressed = (String) ((Button) view).getText(); currentelemInList++; if(currentelemInList>=totalElemInlist){ currentelemInList=0; } adapter.setButtonPressed(currentelemInList); goButton.setText(listheader[currentelemInList]); } }); listView.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> adapter, View view, int position, long arg) { /* * Have to catch Nullpointer exception here since I have two elements in list plus 1 header and 1 footer. * When I click the footer I sent the number 3 to my next intent (4-1). But I don't want the footer to fire on click at all */ if(position<Portfolio.getPortfolio().count()){//Just to check that I havn't clicked listFooter. System.out.println("Klicka i listan"); Intent intent = new Intent(getActivity().getApplicationContext(), DetailShareHoldingActivity.class); intent.putExtra("new_variable_name","value"); intent.putExtra("bookPositionInList",(position-1));//Just so that the top of the list is not clicked System.out.println(position); startActivity(intent); } } }); buyButton = (Button)view.findViewById(R.id.buyNewShares); buyButton.setOnClickListener(new OnClickListener() {public void onClick(View view) { buyShares(); }}); return view; } @SuppressLint({ "NewApi", "NewApi" }) private void buyShares(){ System.out.println("Köpt tryckt"); Intent intent = new Intent(getActivity().getApplicationContext(), BuyNewSharesActivity.class); startActivity(intent); } @SuppressLint({ "NewApi", "NewApi" }) public void onListItemClick(ListView l, View v, int position, long id) { System.out.println("Klicka i listan"); Intent intent = new Intent(getActivity().getApplicationContext(), DetailShareHoldingActivity.class); intent.putExtra("new_variable_name","value"); intent.putExtra("bookPositionInList",position); startActivity(intent); } public static ShareHoldingAdapter getPortfolioFragmentShareHoldingAdapter(){ return adapter; } } 

И вот мой файл listview_footer_row.xml

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TableLayout android:id="@+id/book_detailTable" android:layout_width="0dp" android:layout_height="match_parent" android:layout_gravity="top" android:layout_weight="1" android:paddingTop="0dip" > <TableRow android:id="@+id/tableRow1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="top" android:paddingTop="0dip" > <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:ems="10" android:gravity="left" android:text="Namn" android:textColor="#ababab" android:textSize="25dip" /> </TableRow> </TableLayout> </LinearLayout> 

Solutions Collecting From Web of "Как сделать listFooter недоступным для просмотра"