Alter custom field view
Accomplished it by filtering field data in CRM_Custom_Page_AJAX
in the function getMultiRecordFieldList(),
code goes like:
$data_arr = array('1','2','3');
$obj = new CRM_Profile_Page_MultipleRecordFieldsListing();
list($fields, $attributes) = $obj-&gt;browse();
foreach ($fields as $key =&gt; $value) {
  if($fields[$key][[custom_field_id]]['data'] &amp;&amp; !in_array($fields[$key][[custom_field_id]]['data'], $data_array)){
    unset($fields[$key]);
  }
}