I found the solution. It is to declare a custom layout for the item of the Spinner and use it instead of the default one. And in the custom layout, I set the color of the TextView text to black.
It works this way.
So the code: (promospin_row.xml)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="New Text"
android:textColor="#000000"
android:id="@+id/tv_promo_txt"
android:paddingLeft="5dp"
android:paddingTop="5dp" />
</LinearLayout>
and the java code:
// Creating adapter for spinner
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(mcontext, R.layout.promospin_row, R.id.tv_promo_txt, mylabels);
// Drop down layout style
dataAdapter.setDropDownViewResource(R.layout.promospin_row);
Spinner myspinner = (Spinner) V.findViewById(R.id.spin_prod_promo);
// attaching data adapter to spinner
myspinner.setAdapter(dataAdapter);
This way, the item text becomes black. And no other anomalies.
Thank you @CommonsWare for your time